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。