如何用Xcode编写集成测试?

时间:2019-04-10 10:04:02

标签: ios xcode unit-testing

测试分为三个基本层:

  1. 单元测试-确保代码的每个功能/单元按预期工作
  2. 功能测试-确保单元按预期相互交互
  3. 集成测试—确保我们的应用按预期与其他app / api /服务集成

我可以使用Xcode的iOS Unit Testing BundleiOS UI Testing Bundle处理案例1和案例2。我不知道如何从第3点开始编写测试。

我想写测试来检查我的应用程序是否与后端,BLE设备等正确集成。

请注意,我已经编写了使用CI运行的单元测试。

集成测试不应在CI中运行,因为它取决于外部环境。我只想手动运行它。

如何在Xcode中处理它?第二Unit Testing Target?有什么建议吗?您如何在系统中处理它?<​​/ p>

1 个答案:

答案 0 :(得分:1)

根据您要使用的集成测试的风格,可能要使用专用的单元或UI测试目标。

从您的问题中,我猜测您想要使用的样式倾向于使用其他实际系统进行黑匣子测试。如果是这种情况,专用的UI测试目标将完成这项工作。

通过UI测试,您可以执行诸如在设备上打开其他应用程序并测试您的应用程序与它们交互的方式。例如,this post显示了如何编写使用Messages应用程序测试通用链接的UI测试。

animation showing an integration level UI test from the linked post

仅当您需要控制应用程序中的部分代码(例如,对网络请求进行存根)时,我才会使用专用的单元测试目标。但这与您给定的集成测试的定义并不完全匹配。