bne*_*ely 2 core-location abaddressbook xcode-ui-testing
我的iOS应用程序目前有一个iOS 7的部署目标(虽然我的方案运行iOS 9.2模拟器),以及与AddressBook,AddressBookUI和CoreLocation框架的链接.我在Xcode 7中有一套Swift UI测试(不在Instruments中).当用户首次使用我的应用时,系统会要求他们在应用运行时访问其联系人及其位置.由于这涉及需要完美执行的大量代码,因此我希望自动化所有可能的结果并确保UI处于所需状态.
我可以使用Xcode UI测试重置模拟器的设置以访问联系人和位置吗?例如,我可以setUp()在我的测试用例类中的函数中实现它.我找到了一些关于如何响应对话框的教程,但在我到达那一点之前,我需要模拟请求权限的条件.这是一个解释如何响应此类警报的问题.
简答:不.UI测试没有用于重置模拟器的API(因此重置权限对话框).我建议向Apple提交一份错误报告,解释为什么需要这个.
UI测试不容易测试"不快乐的路径".在您的问题中,您提到测试所有权限流.如果不在测试之间手动重置模拟器,这将是不可能的.我建议只测试UI测试的快乐路径,并将其他案例留给单元测试.
我知道这并不理想,但现在这是一个不错的解决方法.对于它的价值,这是我在测试我们的应用程序时采用的方法.(该应用程序要求推送通知和位置权限.)
| 归档时间: |
|
| 查看次数: |
780 次 |
| 最近记录: |