我正在用XCUITest做iOS UI测试。由于我们无法访问该应用程序,如何设置该应用程序的默认值?
发布于 2019-10-04 01:07:32
您可以使用启动参数传递所有必需的数据。
请阅读文档
https://developer.apple.com/documentation/xctest/xcuiapplication/1500477-launcharguments
另一种(速度较慢的)选择是使用深度链接。
发布于 2019-10-04 04:16:01
这听起来比实际复杂得多,但我使用的一种技术是在测试套件中设置一个HTTP服务器,您可以使用该服务器获取测试代码中的模拟数据。我已经成功地使用了Embassy and Ambassador。
所以你需要传入一个启动参数,告诉你的应用程序代码从服务器获取数据。对于UserDefaults,向本地端点发出这些特定请求的帮助器类可以很好地工作。不幸的是,这意味着你的应用程序代码必须为测试做一些设置,但根据你的需求,这可能是一个很好的折衷方案。
发布于 2019-10-04 04:33:03
跨越进程边界的另一种可能的解决方案:
如果您不是在做设备测试,您可以访问"SIMULATOR_SHARED_RESOURCES_DIRECTORY“并在文件中提供数据以供您的测试使用。
在真实的设备上,这将更加困难,因为您将需要使用共享组容器。
https://stackoverflow.com/questions/58223467
复制相似问题