使用UI测试或单元测试框架对库进行集成测试?

时间:2018-06-08 10:53:21

标签: ios unit-testing integration-testing xcode-ui-testing

有一个iOS库(SDK),我必须编写集成测试。此库在iOS客户端应用程序中用作库,从不作为独立应用程序使用。

我已经找到了2个关于如何编写集成测试的同样好的意见。

  1. 使用XCode UI测试并使用示例客户端应用程序测试库的端到端集成。客户端应用程序将使用库的所有功能。通过这种方式,UI测试可以向我展示库如何与客户端应用程序集成。

  2. 使用单元测试框架。测试将写在库本身内部。根本不需要客户端应用程序。测试将针对多个类运行,以了解它们如何在它们之间进行集成。

  3. 您认为正确的做法是什么?

1 个答案:

答案 0 :(得分:1)

UI测试运行缓慢且维护成本高(在时间方面)。它们只能用作获取测试覆盖率的方法,因为它无法以其他更快的方式运行并且更易于维护。

如果您的库没有任何类型的UI,那么没有理由介绍一个仅用于运行UI测试。如上所述使用选项2会更有意义。

唯一需要注意的是,示例客户端应用程序在进行更改后进行更改或回归测试时对手动测试非常有用。这个值取决于你库中的内容。如果您确实制作了一个示例应用程序,那么编写一个或两个UI测试只是为了检查它在您进行更改时不会退回/中断是一个好主意。如果您不经常使用它,这一点尤为重要。