我用XCTest编写了一套针对我们iOS应用的自动化UI测试。 某些测试用例需要在不良的网络连接条件下进行验证。
我知道可以使用网络链接调节器来模拟不良的网络连接。我知道您也可以在真实设备和模拟器的设置中启用它。启用和设置所需状态似乎仅涉及手动步骤。
但是,我想知道是否可以实现此过程的自动化-您将如何在CI上运行一套自动化测试(如果其中一些测试需要在不良网络条件下进行测试)?
我们没有使用真实的设备进行自动化测试。 我无权运行运行CI套件的计算机。 我没有始终可以启用和设置NLC的专用计算机,也无法操纵网络本身(路由器等)。 我们不在测试中使用模拟。
答案 0 :(得分:0)
不幸的是,不良的网络连接/没有网络连接无法使用XCTest进行测试,并且没有简单的方法来进行类似的设置。
(通常)有两种解决方法:
1/ implement some kind of network connection issues to your network-communication methods and run them when running UI tests
2/ test on real device with slow internet connection set in settings.
不幸的是,默认情况下,无法在Simulator或Mac服务器(您可能用于CI)上设置缓慢的网络连接,并且在这方面第三方工具也不是很好。