Intermittent “Failure attempting to launch” in ios UITest

人走茶凉 提交于 2019-11-29 20:05:27

问题


I see this about 1/10 times with my UI Tests on Xcode7.3/iOS9.3

Test Case '-[WhatevUITests.RegistrationUITests testVerifyUnsupportedPhoneNumberAlert]' started.
    t =     0.00s     Start Test
    t =     0.00s     Set Up
    t =     0.01s         Launch me.jackpine.whatev-dev
    t =     0.11s             Terminate <XCUIApplicationProcess: 0x7ff91a712550 me.jackpine.whatev-dev (94280)>
    t =     1.14s             Assertion Failure: UI Testing Failure - Failure attempting to launch <XCUIApplicationImpl: 0x7ff91a49fae0 me.jackpine.whatev-dev at /Users/mkirk/src/jackpine/Whatev-iOS/build/Whatev/Build/Products/Debug-iphonesimulator/Whatev Dev.app>, nil token for current process reference <XCUIApplicationProcess: 0x7ff91a624440 me.jackpine.whatev-dev (94333)>
/Users/mkirk/src/jackpine/Whatev-iOS/WhatevUITests/RegistrationUITests.swift:16: error: -[WhatevUITests.RegistrationUITests testVerifyUnsupportedPhoneNumberAlert] : UI Testing Failure - Failure attempting to launch <XCUIApplicationImpl: 0x7ff91a49fae0 me.jackpine.whatev-dev at /Users/mkirk/src/jackpine/Whatev-iOS/build/Whatev/Build/Products/Debug-iphonesimulator/Whatev Dev.app>, nil token for current process reference <XCUIApplicationProcess: 0x7ff91a624440 me.jackpine.whatev-dev (94333)>
    t =     1.15s             Tear Down

I'm not sure what it means. Often I can rerun the test and it will complete without issue.


回答1:


I had this issue with Xcode 8.3.2 and iOS 10.3 Simulator. All of the tests started failing after updating the Mac OS to Sierra.

We would see the above exception at:

XCUIApplication().launch()

and the first time the test tries to access the XCUIApplication() it crashes.

The fix was to move the XCUIApplication().launch() call to the setUp() function.

Background

In our case the problem was multithreading. We wanted to make sure some other code was executed before the app started. That code ran asynchronous and started the app once it returned. The fix makes sure that the app is launched first and on the main thread. Now everything works fine again.



来源:https://stackoverflow.com/questions/36413059/intermittent-failure-attempting-to-launch-in-ios-uitest

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!