“UI 测试失败:没有收到视图在 2.0 秒内消失的通知”错误
Posted
技术标签:
【中文标题】“UI 测试失败:没有收到视图在 2.0 秒内消失的通知”错误【英文标题】:"UI Testing Failure: Did not receive view did disappear notification within 2.0s" error 【发布时间】:2016-09-08 12:41:50 【问题描述】:我正在尝试记录一个 UI 测试用例并运行它,但我遇到了这个错误。基本上,在我的应用程序中,当我登陆主屏幕时,会要求用户允许使用通知和位置。在我记录这些事件并尝试转到另一个 VC 后,它通常会这样记录。
[app.alerts[@"\u201cSampleApp\u201d Would Like to Send You Notifications"].collectionViews.buttons[@"Don\u2019t Allow"] tap];
[app.alerts[@"Allow \u201cSampleApp\u201d to access your location while you use the app?"].collectionViews.buttons[@"Allow"] tap];
//segue to VC2
但是当我播放它时,它会因为标题中的错误而失败。
在 2.0 秒内没有收到视图确实消失的通知
我怀疑当警报被清除时,segue 按钮已经被点击,虽然它希望 home VC 消失,但它没有。这种理解对吗?如果是,我该如何延迟期望,如果不是,请帮忙。
【问题讨论】:
想法,有人吗?我发现了一个类似的问题,但被删除了,所以我想我不是唯一一个面临这个问题的人。 ***.com/questions/37136467/… 我之前卡在断点上时遇到过这种情况,但没有意识到我在断点上。 【参考方案1】:系统级别的警报应该由addUIInterruptionMonitorWithDescription
API 处理这里是来自苹果Link 的文档和下面的示例代码:
addUIInterruptionMonitorWithDescription("First Dialog") (alert) -> Bool in
alert.buttons["Allow"].tap()
return true
XCUIApplication().tap()
【讨论】:
以上是关于“UI 测试失败:没有收到视图在 2.0 秒内消失的通知”错误的主要内容,如果未能解决你的问题,请参考以下文章