【发布时间】:2016-06-18 15:33:22
【问题描述】:
我想写一个这样的测试:
当我的应用程序进入某个窗格时,它应该请求使用相机的权限。
我想测试窗格是否出现。我正在使用 XC 的内置 UITest 框架来执行此操作。根据我在谷歌和这里找到的内容,我似乎应该执行以下操作:
let dialogAppearedExpectation = expectationWithDescription("Camera Permission Dialog Appears")
addUIInterruptionMonitorWithDescription("Camera Permission Alert") { (alert) -> Bool in
dialogAppearedExpectation.fulfill()
return true
}
goToCameraPage()
waitForExpectationsWithTimeout(10) { (error: NSError?) -> Void in
print("Error: \(error?.localizedDescription)")
}
测试以失败开始,太好了。我实现了 goToCameraPage,它正确地导致出现“授予权限”弹出窗口。但是,我希望这会触发中断监视器。然而,没有捕捉到这样的中断,也没有发生实现。
我在某处读到你应该在对话框出现后执行app.tap()。但是,当我这样做时,它会单击“允许”按钮。对话框消失了,仍然没有处理中断。
是否存在不将权限对话框视为“警报”或无法处理的某种方式?我什至进去并用一个只显示app.alerts 的东西替换了中断位,但结果是空的,即使我正在查看模拟器中的弹出窗口。
谢谢!我正在为 iPhone 6s 使用 Xcode7.2,iOS 9.2 模拟器。
【问题讨论】:
标签: ios swift xcode-ui-testing xcode7.2