【发布时间】:2018-10-19 06:00:46
【问题描述】:
我想将测试进程延迟 T 秒,而不产生超时。
首先我尝试了显而易见的:
sleep(5)
XCTAssert(<test if state is correct after this delay>)
但是失败了。
然后我尝试了:
let promise = expectation(description: "Just wait 5 seconds")
waitForExpectations(timeout: 5) { (error) in
promise.fulfill()
XCTAssert(<test if state is correct after this delay>)
}
我的XCTAssert() 现在成功了。但是waitForExpectations() 超时失败。
这是根据XCTest wait functions的文档说的:
超时始终被视为测试失败。
我有什么选择?
【问题讨论】:
标签: ios swift timeout wait xctest