Timed out waiting 120 seconds for simulator to boot

5.9k views Asked by At

It looks like Teamcity agent (TC version is 9.0 EAP) has issues with launching iOS Simulator via testing shell script.

I use Build Step: Command Line, which runs Custom Script and passes params to it. Teamcity agent is launched on Mac OS X Yosemite 10.10 from a shell script ../bin/mac.launchd.sh.

Error from Build Log:

[12:33:24][Step 2/2] 2014-11-20 11:33:25.421 xcodebuild[28083:289783]  iPhoneSimulator: Timed out waiting 120 seconds for simulator to boot, current state is 1.
[12:33:24][Step 2/2] 
[12:33:24][Step 2/2] Testing failed:
[12:33:24][Step 2/2] Test target app-tests encountered an error (Timed out waiting 120 seconds for simulator to boot, current state is 1. If you believe this error represents a bug, please attach the log file at /var/folders/sz/1lfcb1354xggcnd04_9j5kc40000gp/T/com.apple.dt.XCTest-status/Session-2014-11-20_11:31:25-P1Pjwd.log)
[12:33:24][Step 2/2] ** TEST FAILED **

Here is my shell script for testing:

xcodebuild \
    -sdk iphonesimulator8.1 \
    -destination "name=iPad Air,OS=8.1" \
    -configuration Debug \
    -project "$PROJECTPATH" \
    -scheme app-tests \
    CONFIGURATION_BUILD_DIR="$BUILDPATH" \
    clean test \
    | xcpretty -tc -r junit --output "$BUILDPATH/junit.xml"

I also tried solution from this question but it didn't help to fix the problem.

4

There are 4 answers

0
lezhumain On

In case someone still faces this error, you can set your desired timeout in the capabilities using simulatorStartupTimeout.

In java:

DesiredCapabilities caps = new DesiredCapabilities();
...
caps.setCapability("simulatorStartupTimeout", 5 * 60 * 1000); // 5mn
...

See https://github.com/appium/appium-xcuitest-driver#simulator

0
bolnad On

This has been answered in the comments, and also here is a link to apple forums talking about it, AFAIK, its still the case that this isn't possible until apple changes it

https://devforums.apple.com/message/1040016#1040016

0
Samuel On

For me restarting my Mac worked.

5
Tapan Thaker On

It can happen that your custom scripts are taking too long to finish. I was able to replicate this issue by adding a custom script in build phase to sleep for 5000 seconds.