从Jenkins运行iOS UIAutomation测试

时间:2012-05-02 19:25:35

标签: ios xcode jenkins instruments ios-ui-automation

有一段时间了,我一直在尝试研究如何从Jenkins运行UIAutomation测试 - 每次运行构建时,它都可以正常运行,然后运行我的仪器命令(使用与此处详细相同的命令({ {3}})和jenkins只是挂起,整个机器都是这样,当我查看活动监视器时,我可以看到使用2gb内存的乐器进程。

当我设置jenkins时,我原来是从一个隐藏的用户那里运行的 - 这提出了一些挑战,jenkins是一个守护者而无法访问窗口服务器。然后我决定将jenkins帐户更改为普通用户,登录并从命令行运行工具 - 这工作正常......但是仍然没有运气从jenkins运行。

我已将jenkins帐户设置为开发人员 - 无管理员

请告诉我,如果还有其他任何我可以尝试的事情,或者如果有人能够成功运行您的指导将非常感谢 - 谢谢

3 个答案:

答案 0 :(得分:4)

OS X上的Jenkins是从launchd脚本启动的,默认情况下将作为“守护进程”运行。要做的是在启动的脚本中更改用户。

首先,让Jenkins准备好关闭(在GUI中的“Manage Jenkins”中)。

然后从launchd卸载作业,如下所示:

$ sudo launchctl unload /Library/LaunchDaemons/org.jenkins-ci.plist

然后使用您要运行jenkins的用户编辑launchd plist中的“UserName”属性。还有一个GroupName属性,您可能需要/需要根据用户的组进行相应调整。

最后,重新加载Jenkins:

$ sudo launchctl load /Library/LaunchDaemons/org.jenkins-ci.plist

希望有所帮助!

答案 1 :(得分:1)

因此,如果您将其作为守护程序运行,首先要检查如果在前台运行Jenkins会发生什么最简单的方法是使用java -jar jenkins.war [other options]命令(see this document)。

答案 2 :(得分:0)

也许你可以使用这个https://github.com/houlianpi/robot4ios

然后在jenkins中执行shell:

sh setup.sh
sh runTests.sh ./sample/alltests.js "/Users/komejun/Library/Application Support/iPhone Simulator/5.0/Applications/1622F505-8C07-47E0-B0F0-3A125A88B329/Recipes.app/"

,报告将在./ynmsk-report/test.xml

中自动创建
相关问题