使用XCTest自动化不良的网络连接模拟

时间:2019-03-18 14:15:19

标签: iphone xcode networking ios-simulator xctest

我用XCTest编写了一套针对我们iOS应用的自动化UI测试。 某些测试用例需要在不良的网络连接条件下进行验证。

我知道可以使用网络链接调节器来模拟不良的网络连接。我知道您也可以在真实设备和模拟器的设置中启用它。启用和设置所需状态似乎仅涉及手动步骤。

但是,我想知道是否可以实现此过程的自动化-您将如何在CI上运行一套自动化测试(如果其中一些测试需要在不良网络条件下进行测试)?

我们没有使用真实的设备进行自动化测试。 我无权运行运行CI套件的计算机。 我没有始终可以启用和设置NLC的专用计算机,也无法操纵网络本身(路由器等)。 我们不在测试中使用模拟。

1 个答案:

答案 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)上设置缓慢的网络连接,并且在这方面第三方工具也不是很好。