尝试在Swift 4中编写单元测试,以获取已经正常工作的方法并且无法获得正确的结果。我目前的做法是:
let expected = expectation(description: "Obtain access keys")
let keys = sut.retrieveAccessKeys()
//sleep(5)
if keys != nil {
expected.fulfill()
} else {
XCTFail("ERROR: Failed obtaining access keys")
}
waitForExpectations(timeout: 5) { error in
let myError = error as? Error
print("ERROR: \(String(describing: myError?.localizedDescription))")
}
}
如果钥匙串中不存在值,则sut
通过完成处理程序进行网络调用。我得到的输出错误是:
Error: The operation couldn’t be completed. (com.apple.XCTestErrorDomain error 0.)
我尝试了各种方式,包括添加sleep(5)
。 sut. retrieveAccessKeys()
确实有效,生成的keys
包含一个可选元组。