栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

如何获得Xcode 5在Jenkins从站上运行iOS单元测试?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

如何获得Xcode 5在Jenkins从站上运行iOS单元测试?

根据答案,我提出了一个完整的解决方案。

首先,Mac从站无法使用SSH启动,必须​​使用交互式会话手动启动,然后始终保持登录状态。在我的情况下,奴隶实际上是无头的,所以这是进一步的复杂化。

这是我用来使所有这些操作都可用的步骤。

  1. 在配置了唯一标签的Jenkins主服务器上创建一个新的从属节点(我选择“ xpre-unittests”),并将启动方法设置为“通过Java Web Start启动从属代理”。

  2. 通过屏幕共享(VNC)登录到Mac从属设备并启动从属代理。就我而言,我无法从浏览器启动从属服务器,可能是因为我的浏览器没有运行小程序所需的Java插件。因此,我使用了命令行

    javaws http://{jenkins-host}/computer/{slave-name}/slave-agent.jnlp
    。为了使此操作更可靠,我将此命令配置为在每次交互式登录计算机时都在“系统偏好设置”,“用户和组”,“登录项”下自动运行。

  3. 退出屏幕共享而不注销Mac从站。即使没有人实际使用计算机,这也可以使运行从属代理的交互式会话保持活动状态。

为了使单元测试在不提示用户的情况下运行,我还必须

sudo DevToolsSecurity-enable
在Mac从属计算机上运行。这使Xpre可以与iOS模拟器进行交互,而无需每次都交互式地请求许可。

如果从属计算机重新引导,则必须有人登录Mac从属服务器才能使该从属代理再次运行。因此,我还使基于SSH的从服务器保持活动状态。我将Jenkins作业拆分为多个单独的作业,以构建应用程序和运行单元测试。用于构建应用程序的作业被配置为在基于SSH的从属服务器上运行,而用于运行单元测试的作业被配置为在上述交互式从属节点上运行。这样,如果交互式从属设备出现故障,则仅会影响单元测试,而不会构建产品。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/392372.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号