iosswiftxcodexctestaws-device-farm

How to execute a long runing integration test for iOS


I tried searching and could not find the maximum time limit for an XCTest. I wanted to write a test that is going to run for 1 - 2 hours. Can I do this using wait(for: [CompletionExpectation], timeout: 3600)? Or will the test fail due to upper limit on test run time?

And if XCtest can't run such long tests then is there a different testing framework I can use? It would be nice if the testing framework belongs to one of these options: Working with iOS Tests in AWS Device Farm


Solution

  • I am an engineer on the AWS Device Farm team. You can see the time limits for test execution on Device Farm here: https://docs.aws.amazon.com/devicefarm/latest/developerguide/limits.html. XCTest frameworks can be extended for several hours through looping or with the use of https://developer.apple.com/documentation/xctest/xctestcase/3526064-executiontimeallowance as mentioned before.

    For better assistance on AWS Device Farm specific issues, I suggest utilizing the AWS Device Farm forums as a medium to contact the service team: https://forums.aws.amazon.com/forum.jspa?forumID=193

    Andy