2017-10-04 1 views
1

Ich habe ein Projekt in Jenkins eingerichtet, das den IOS-Simulator während des Laufs öffnen sollte, aber Jenkins konnte den Simulator nicht öffnen.Jenkins konnte den IOS-Simulator nicht öffnen

Jenkins in jenkins Benutzer ausführen.

Im Folgenden finden Sie, was das Projekt Verwendung: - Java Maven basiertes Projekt - Führt appium Server - appium Start IOS Simulator - dieser Schritt mit dem folgenden Fehler fehlschlagen

[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 } 

Ich habe versucht, das Hinzufügen jenkins Benutzer Entwicklergruppe und DevToolsSecurity aktivieren, aber es hat nicht funktioniert.

+0

Sind Ihre Jenkins als kopflose Benutzer konfiguriert? Kein Passwort, Bash-Umgebung usw.? –

+1

Sieht aus, als hätten wir das gleiche (oder zumindest sehr ähnliche) Problem. Ich werde den Thread teilen, den ich in Appium Discuss veröffentlicht habe: https://discuss.appium.io/t/appium-tests-via-jenkins-simulator-not-booting-error-command-osascript-e-tell-application -system-events-to-count-processes-who-bundle-identifier-is-com-apple-iphonesimulator/19038 – Cindy

+0

@KamilSzostakowski läuft als deamon. der Benutzer jenkins ist Sudoer, und es hat die Notwendigkeit, Umgebungsvariablen –

Antwort

0

Wenn Sie Jenkins als Daemon ausführen, kann keine GUI-Anwendung ausgeführt werden. Sie müssen es als Start-Agent konfigurieren oder einen lokalen Slave verwenden.

Hier finden Sie eine complete tutorial.

Standardmäßig läuft Jenkins als Daemon. Ein Daemon ist ein nicht interaktiver Hintergrundprozess, der als Teil des Gesamtsystems ausgeführt wird und nicht an einen bestimmten Benutzer gebunden ist. Ein Daemon kann nicht mit der GUI interagieren.

Ein großer Teil von CI ist die Ausführung von Simulatoren und anderen GUI-Anwendungen. Daher brauchen wir eine andere Option. Um dies zu beheben, können Sie Jenkins so ändern, dass es als Startagent ausgeführt wird. Ein Startagent wird im Auftrag eines Benutzers im Hintergrund ausgeführt.

+0

Danke, werde es versuchen. –

Verwandte Themen