Swift中的UI测试
一,为什么要使用UI测试?
1.自动化手动测试🤖
- 测试应用程序时,我们总是重复相同的过程以测试我们没有破坏任何东西。 我们可以通过一系列与手动测试相同的测试来实现这一目标。
2.表示层中的逻辑丰富🌅
- 我们拥有的UI逻辑越多,我们测试的内容就越多
3.节省时间⌚️
- 有了一系列的ui测试,我们可以在更少的时间内每次都重复相同的手动测试。
二。 我们可以测试什么?
- 纽扣
- 刷新表格
- 输入文字
- 滑杆
- 检查导航栏标题
- 推拉视图控制器
- 重新排列细胞
- 等等..
您可以查看此UI测试备忘单以获取更多信息。
三, 我们如何正确测试?
1.有助于将逻辑与表示法separate分开的架构。
- 当我们谈论MVC时,我们都知道它不是非常可测试的,因为视图和控制器之间的交互非常紧密。
- 我们可以使用MVVM或VIPER架构,通过更好的分布来实现更好的可测试性。 您可以查看这篇很棒的文章,以获得更多信息iOS体系结构模式。
2.依赖注入💉
- 这种软件设计模式允许在运行时而不是在编译时选择组件,目的是用Test Doubles代替生产代码。
- 依赖注入的示例将类似于以下ServiceLocator:
-
CharactersViewController
:是主视图控制器,并显示GOT字符列表。
-
CharacterDetailVC
:显示CharacterDetailVC
的详细信息。
字符VC测试
辅助方法
我们将在测试中使用一些辅助方法。
我们将不再需要手动重复此过程this。
五,从这里去哪里
在github上检查整个项目,查看所有使用的配置和框架。
尝试自己编写一些UI测试。
创建您自己的项目,并按照此结构做一些事情!
VI。 归因
- GOT Challenge Swift应用程序基于Idealista GOT Challenge Android。