如何解决在 UI 测试中检测粘贴通知?
我有一个用例,我正在练习粘贴到文本视图中,然后进行导航。
我想知道是否有办法等待粘贴通知消失,因为它会阻止与其下方元素的交互。
有人对此有任何想法吗?我觉得它应该靠跳板生存,虽然我还没有找到它。
谢谢!
解决方法
等待 Paste
菜单项消失为我提供了足够的延迟。如果没有这个,我的测试在从剪贴板复制时会失败,因为像你一样,在 UI 准备好之前,事情正在尝试进行。
UIPasteboard.general.string = searchTerm
searchField.tap()
app.menuItems["Paste"].tap()
_ = app.menuItems["Paste"].waitForDisappearance()
然后 waitForDisappearance
是一个非常标准的期望等待函数,它扩展了 XCUIElement
:
func waitForDisappearance(timeout: TimeInterval = 2.0) -> Bool {
let expectation = XCTNSPredicateExpectation(predicate: NSPredicate(format: UIStatus.notExist.rawValue),object: self)
let result = XCTWaiter.wait(for: [expectation],timeout: timeout)
switch result {
case .completed:
return true
default:
return false
}
}
有时我会用结果做一些事情,但大多数时候我会把它扔掉。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。