XCode 持续集成

Posted

技术标签:

【中文标题】XCode 持续集成【英文标题】:XCode Continuous Integration 【发布时间】:2013-11-05 14:34:21 【问题描述】:

我使用在 Mac OS X 10.9 上运行的新 XCode Continuous Integration 服务。使用 Mac OS X 服务器。

所以我创建了带有测试目标的新机器人:在所有模拟器上运行测试(没有任何设备)

集成后我收到这样的错误:

集成失败。机器人无法找到或使用其中一个 设备配置为集成。

如何解决这个问题?我不想将任何设备连接到服务器进行集成测试。

提前致谢,

【问题讨论】:

【参考方案1】:

您正在测试的应用是否支持所有设备?尝试为“特定设备”设置机器人并选择您构建的模拟器。还要确保将当前代码更改推送到 Xcode 服务器从中提取的存储库。

编辑 2013 年 11 月 19 日

    在您的服务器计算机上,确保您安装了最新的 Xcode 版本(当前为 5.0.2)。

    打开 Xcode 并在下载中配置首选项以安装命令行工具,并确保您已下载/安装了要测试的模拟器。例如,如果您正在为 ios 6.1 构建,则需要安装模拟器。

    在您的 Mac OS X Server Xcode 管理面板的“构建”部分中,确保选择该 Xcode 应用程序版本。服务器将使用该 Xcode 应用程序进行构建。

    当您编辑机器人设置时,您可以在其中配置要测试的设备,选择“特定设备”并选择您在开发机器上成功构建的模拟器,例如,选择 iPad Retina (6.1 ),或者您的应用支持的任何内容。

如果特定模拟器设备未出现在选定设备列表中,则该模拟器可能未安装在您的服务器计算机上。请参见上面的步骤 2。

(希望对您有所帮助)

【讨论】:

推送更改,当我选择仅 iOS 模拟器集成挂起数小时【参考方案2】:

这与描述相似,升级到 Xcode 7.3 和最新的 OS X Server,我得到了这个错误。

MB Bot 的 Bot 问题(构建服务错误)MB Bot 的集成 #69 在 Xcode 中打开: xcbot://P3P4/bo​​tID/e6fd861f04bdb3ae4b3d731a1f0c4f9f/integrationID/cf7e287759d2045e134163c25b01518a

断言:无法测试,因为没有设备或模拟器 可用的。文件:(空):(空)

在 1 次集成之前引入

在深入研究后,尝试“修复...”按钮并为旧操作系统版本安装所有不同的模拟器,但在服务器上无济于事。最后,我发现它正在执行结帐,但在开始构建之前立即失败。禁用测试允许它编译。然后我注意到 Bot 配置 Perform Test Action 中的 Build Configuration 设置为 Use Schema Settings,并且该方案较旧。在架构中更改此内容后,架构文件中的差异看起来像这样。

- version = "1.3"> + version = "1.7">

这似乎解决了问题。这可能是一种罕见的情况,但我想如果有人遇到类似的问题,我会发布这个答案,因为需要几天的时间才能弄清楚。

【讨论】:

以上是关于XCode 持续集成的主要内容,如果未能解决你的问题,请参考以下文章

XCode 持续集成

Xcode 6 上的持续集成

Xcode 持续集成和 Mercurial

XCode 持续集成 - 不支持的设备

Xcode Bots Server 持续集成失败

利用Xcode Server实现bot持续集成