詹金斯无法打开IOS模拟器

时间:2017-10-04 16:05:57

标签: ios jenkins ios-simulator appium

我有一个在jenkins中设置的项目,该项目应该在运行期间打开IOS模拟器,但是jenkins无法打开模拟器。

Jenkins在jenkins用户中运行。

以下是项目使用的内容:   - 基于Java maven的项目   - 运行appium服务器   - appium启动IOS模拟器 - 此步骤失败并出现以下错误

[XCUITest] Error: Command 'osascript -e 'tell application "System Events" to count processes whose bundle identifier is "com.apple.iphonesimulator"'' exited with code 1
    at ChildProcess.<anonymous> (../../lib/teen_process.js:92:19)
    at emitTwo (events.js:125:13)
    at ChildProcess.emit (events.js:213:7)
    at maybeClose (internal/child_process.js:897:16)
    at Process.ChildProcess._handle.onexit (internal/child_process.js:208:5)
 { Error: Command 'osascript -e 'tell application "System Events" to count processes whose bundle identifier is "com.apple.iphonesimulator"'' exited with code 1
    at ChildProcess.<anonymous> (../../lib/teen_process.js:92:19)
    at emitTwo (events.js:125:13)
    at ChildProcess.emit (events.js:213:7)
    at maybeClose (internal/child_process.js:897:16)
    at Process.ChildProcess._handle.onexit (internal/child_process.js:208:5)
  stdout: '',
  stderr: '36:106: execution error: An error of type -610 has occurred. (-610)\n',
  code: 1 }

我尝试将jenkins用户添加到开发人员组并启用DevToolsSecurity,但它没有用。

1 个答案:

答案 0 :(得分:0)

如果您将Jenkins作为守护程序运行,它将无法运行GUI应用程序。您必须将其配置为启动代理或使用本地从属。

您可以在这里找到complete tutorial

  

默认情况下,Jenkins作为守护进程运行。守护程序是一个非交互式后台进程,它作为整个系统的一部分运行,并不依赖于特定用户。守护程序无法与GUI交互。

     

CI的很大一部分是运行模拟器和其他GUI应用程序,因此我们需要另一个选项。要解决此问题,您可以将Jenkins更改为作为启动代理运行。发起代理代表用户在后台运行。