如何在 jenkins 上运行 ios 模拟器进行 ui 自动化测试

Posted

技术标签:

【中文标题】如何在 jenkins 上运行 ios 模拟器进行 ui 自动化测试【英文标题】:How to run ios simulator for ui Automation test on jenkins 【发布时间】:2015-03-18 10:41:49 【问题描述】:

我正在尝试从 jenkins 运行 UI 自动化脚本:

instruments -w 'iPhone 6 (8.1 Simulator)' \
-t '/Applications/Xcode.app/Contents/Applications/Instruments.app/Contents/PlugIns/AutomationInstrument.xrplugin/Contents/Resources/Automation.tracetemplate' \
'myAppName' \
-e UIASCRIPT 'some_path' \
-e UIARESULTSPATH 'some_other_path'

但我遇到了一个错误,模拟器无法启动

Waiting for device to boot...
2015-03-18 10:29:04.064 instruments[13082:64124] [MT] iPhoneSimulator: Could not launch simulator: -10810

在 jenkins 用户下从命令行运行时我确实可以工作。

任何帮助将不胜感激,谢谢。

【问题讨论】:

【参考方案1】:

这可能与您没有在桌面会话中运行 Jenkins master 或 Jenkins slave 的事实有关,这意味着它无法访问您的 GUI(例如,它无法启动任何弹出窗口或对话框)。

因此,您要么需要手动启动 Jenkins 主机,要么允许它访问 GUI(如果它作为服务运行)(不确定如何在 Mac OS 上执行此操作)。另一种方法是在同一台机器上运行 Jenkins 从站,通过 JNLP 启动。

以下 *** 问题处理相同的错误消息/代码并建议类似的解决方案:

Timed out waiting 120 seconds for simulator to boot Launching XCode Simulator with jenkins user

【讨论】:

您可以使用 github.com/stisti/jenkins-app 从桌面会话运行 jenkins

以上是关于如何在 jenkins 上运行 ios 模拟器进行 ui 自动化测试的主要内容,如果未能解决你的问题,请参考以下文章

在构建机器上从命令行运行 IOS 仪器的问题

如何记录jenkins构建次数

通过jenkins在mac mini上运行ios构建时获取java.lang.InterruptedException

通过 jenkins 在 mac mini 上运行 ios 时获取 java.lang.InterruptedException

iOS:如何在设备上运行 XCTest?

无法在 vscode 上运行 android 或 iOS 模拟器进行颤振