let webViewsQuery = app.webViews
let emailOrPhoneTextField = webViewsQuery/*@START_MENU_TOKEN@*/.textFields["Email or phone"]/*[[".otherElements[\"Sign in – Google accounts\"].textFields[\"Email or phone\"]",".textFields[\"Email or phone\"]"],[[[-1,1],[-1,0]]],[0]]@END_MENU_TOKEN@*/
let exists = NSPredicate(format: "exists == TextField")
expectation(for: exists, evaluatedWith: emailOrPhoneTextField, handler: nil)
waitForExpectations(timeout: 30, handler: nil)
emailOrPhoneTextField.tap()
异步等待失败:超过30秒的超时,并没有实现期望:在通过快速通道扫描运行时,“为对象“电子邮件或电话” TextField预测谓词
exists == 1
答案 0 :(得分:1)
那是因为您从未达到期望(使用expectation.fulfill()
方法)。如果您不关心期望的实现,请使用XCTWaiter
。
答案 1 :(得分:1)
不仅仅是您需要使期望评估为真吗?
let exists = NSPredicate(format: "exists == true")
或
let exists = NSPredicate(format: "exists == 1")