sil*_*sky 2 xcode ios xcode-ui-testing xctestcase
我有一些 UI 测试,想测试当我按下“订阅”按钮时会发生什么。在模拟器中,会显示一条警告,要求使用 Apple ID 登录:
app.alerts["Sign In"]我尝试使用谓词和使用函数等待警报addUIInterruptionMonitor。没有运气。我什至尝试等待“取消”按钮出现,但这也不起作用。
有什么想法如何处理此警报并按“取消”吗?
此警报的问题在于它不是从您的应用程序创建的,而是从系统应用程序 - Springboard创建的创建的。因此,为了能够从该应用程序查询元素,您必须XCUIApplication使用 Springboard 包 ID 创建对象:
let springboardApp = XCUIApplication(bundleIdentifier: "com.apple.springboard")
Run Code Online (Sandbox Code Playgroud)
然后,通过以下方式找到您的警报:
let signInAlert = springboardApp.alerts.element
Run Code Online (Sandbox Code Playgroud)
然后您应该能够找到“取消”按钮:
signInAlert.buttons["Cancel"].tap()
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1421 次 |
| 最近记录: |