我正在尝试使用Xcode 7 beta 2中提供的新UI测试来编写测试用例.该应用程序有一个登录屏幕,它可以调用服务器进行登录.由于它是异步操作,因此存在与此相关的延迟.
在继续进一步的步骤之前,有没有办法在XCTestCase中引起延迟或等待机制?
没有适当的文档可用,我浏览了类的Header文件.无法找到与此相关的任何内容.
有什么想法/建议吗?
我想在 Swift 中测试异步函数,因此如下所示,我创建了一个XCTestExpectation
并将其传递给XCTWaiter
. 现在,无论期望是否得到满足,我总是能成功运行测试。
你能指出代码中有什么问题吗?我完全关注了为 Swift 3 制作的博客,但是,我正在运行 Swift 4。这是问题吗?
func testAsyncFunction() {
let expectation = XCTestExpectation(description: "Some description")
vc.asyncFunction(5) { (abc: Int) -> Int in
if (abc != 25) {
// expectation.fulfill()
}
return 0
}
_ = XCTWaiter.wait(for: [expectation], timeout: 2.0)
}
Run Code Online (Sandbox Code Playgroud)