【问题标题】:Automating bad network connection simulation with XCTest使用 XCTest 自动模拟不良网络连接
【发布时间】:2019-08-08 22:36:49
【问题描述】:

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

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

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

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

【问题讨论】:

    标签: iphone xcode networking ios-simulator xctest


    【解决方案1】:

    不幸的是,使用 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)上设置慢速网络连接,并且 3rd 方工具在这方面也不是很好。

    【讨论】:

    • 可以使用网络链接调节器在 Mac OS 本身上设置慢速网络连接,然后它也将应用于所有模拟器。
    猜你喜欢
    • 2016-11-13
    • 1970-01-01
    • 1970-01-01
    • 2011-07-15
    • 2017-02-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-11-08
    相关资源
    最近更新 更多