UIテスト

XCUITest

手前味噌

https://github.com/hiroakit/ios-ui-testing-learn

数秒待機する

iOS 8以降なら、DispatchQueue.asyncAfter(deadline:execute:) を使う

https://developer.apple.com/documentation/dispatch/dispatchqueue/2300020-asyncafter

1
2
3
4
let exp = expectation(description: "Task")
DispatchQueue.main.asyncAfter(deadline: .now() + 1.0) {
    exp.fulfill()
}

iOS 10以降 (Xcode 8.3以降) なら、XCTWaiterを使う

https://developer.apple.com/documentation/xctest/xctwaiter/2806744-wait

1
2
let exp = expectation(description: "Task")
XCTWaiter().wait(for: [exp], timeout: 3)