2424 # Please make sure the available Xcode versions and iOS versions
2525 # on the runner images. https://github.com/actions/runner-images
2626 env :
27- XCODE_VERSION : 16.4
28- IOS_VERSION : 18.5
29- IPHONE_MODEL : iPhone 16 Plus
27+ XCODE_VERSION : ' 16.4'
28+ IOS_VERSION : ' 18.5'
29+ IPHONE_MODEL : ' iPhone 16 Plus'
3030 PREBUILT_WDA_PATH : ${{ github.workspace }}/wda/WebDriverAgentRunner-Runner.app
3131 APPIUM_TEST_SERVER_PORT : ' 4723'
3232 APPIUM_TEST_SERVER_HOST : ' 127.0.0.1'
@@ -43,16 +43,19 @@ jobs:
4343 uses : maxim-lobanov/setup-xcode@v1
4444 with :
4545 xcode-version : ${{ env.XCODE_VERSION }}
46+
4647 - run : defaults write com.apple.iphonesimulator PasteboardAutomaticSync -bool false
4748
48- - uses : futureware-tech/simulator-action@v3
49+ - name : Prepare iOS simulator
50+ uses : futureware-tech/simulator-action@v4
4951 with :
50- # https://github.com/actions/runner-images/blob/main/images/macos/macos-14-arm64-Readme.md
5152 model : ${{ env.IPHONE_MODEL }}
5253 os_version : ${{ env.IOS_VERSION }}
54+ wait_for_boot : true
55+ shutdown_after_job : false
5356
54- # Start Appium
55- - run : |
57+ - name : Start Appium server
58+ run : |
5659 npm install -g appium
5760 appium driver install xcuitest
5861 nohup appium server \
6467 --keep-alive-timeout 1200 \
6568 2>&1 > appium.log &
6669
67- TIMEOUT_SEC=15
70+ TIMEOUT_SEC=25
6871 INTERVAL_SEC=1
6972
7073 start_time=$(date +%s)
7477
7578 if nc -z $APPIUM_TEST_SERVER_HOST $APPIUM_TEST_SERVER_PORT; then
7679 echo "Appium server is running after $elapsed seconds"
77- popd
7880 cat appium.log
7981 exit 0
8082 fi
8890 sleep "$INTERVAL_SEC"
8991 done
9092
91- - run : |
93+ - name : Downloading prebuilt WDA
94+ run : |
9295 appium driver run xcuitest download-wda-sim --platform=ios --outdir=$(dirname "$PREBUILT_WDA_PATH")
93- name: Downloading prebuilt WDA
9496
9597 - name : Set up Python
9698 uses : actions/setup-python@v5
0 commit comments