2

如果预期元素(在我的情况下为警报)在超时之前(根据服务器请求)未出现,我有一项任务要成功通过 UITest。

代码:

let element = app.alerts["test text"]
let existsPredicate = NSPredicate(format: "exists == true")
expectation(for: existsPredicate, evaluatedWith: element, handler: nil)

waitForExpectations(timeout: 10, handler: nil)

// when timeout expired test should finish with success

没有通过 Internet 找到任何解决方案。

4

1 回答 1

3

Оооо,你应该介意它UITest。在这种情况下,期望具有很好的属性:isInverted。将此设置为 true,表示预期不会发生。)))

let element = app.alerts["test text"]
let existsPredicate = NSPredicate(format: "exists == true")
let expectation = expectation(for: existsPredicate, evaluatedWith: element, handler: nil)
expectation.isInverted = true // if alert doesn't appear during 10 seconds, then test passed

waitForExpectations(timeout: 10, handler: nil)
于 2017-11-20T19:10:06.243 回答