SBTUITestTunnelServer 10.0.0

SBTUITestTunnelServer 10.0.0

Tomas CaminDavide MazzoniTomas CaminMarco RossiMarco Pagliari 维护。



  • Tomas Camin

SBTUITestTunnel

CI

Version License Platform Swift Package Manager

概述

Apple 从 Xcode 7 开始引入了一个新的 UI 测试功能,正如 Will Turner 在WWDC 的舞台上所说,是对开发者工具中测试技术的巨大扩展。该框架易于使用,且与 IDE 的集成非常好,然而在测试启动的方式上存在一个主要问题。测试代码作为一个独立的过程运行,这阻止了与测试应用的直接数据共享,使得像动态注入数据或模拟网络调用等活动变得困难。

SBTUITestTunnel 扩展了 UI 测试功能,允许动态地

  • 模拟网络调用
  • 从/向应用的 sandbox 下载/上传文件
  • 监控网络调用
  • 重写网络调用
  • 阻止 cookie
  • 与 NSUserDefaults 交互
  • 定义在应用目标中执行的自定义代码块
  • 在表/collection/滚动视图中进行细粒度快速滚动
  • CLLocationManager 模拟
  • UNUserNotificationCenter 模拟

该库支持并发并行测试,因此可以同时使用多个模拟器。

该库由两个独立的组件组成,它们相互通信,一个用于应用目标,另一个用于测试目标。

我应该使用它吗?

SBTUITestTunnel旨在扩展Apple的XCTest框架,而不是取代它。它只是XCUIApplication的单个子类,具有上述附加功能,因此非常易于与您现有的测试代码集成。

文档

  • 安装:描述如何安装库
  • 设置:描述如何将库集成到您的代码中
  • 使用:描述如何使用库
  • 示例:描述如何设置和使用示例应用

您需要其他资源吗?

我们提供了额外的资源来改善UI测试体验

感谢

感谢以下pods的开发者,我们将其用于SBTUITestTunnel

贡献

欢迎贡献!如果您要报告错误,请自由地通过打开新问题或发送拉取请求来帮助我们。

作者

Tomas Camin (@tomascamin)

许可证

SBTUITestTunnel 在Apache License, Version 2.0许可下可用。有关更多信息,请参阅LICENSE文件。