我们公司中有一个大型的基于Java的桌面应用程序,我们将为此构建测试用例。 我们想采用以下测试金字塔方法:
1)我们要求开发人员编写大量的单元测试(但不要验证他们在哪里编写了高质量的单元测试)。
2)我们编写服务测试以遍历代码的每一行,并编写Junit测试以测试代码中的所有可能方法和条件。
3)我们正计划创建UI测试,以确保UI正常工作。
我阅读了很多有关测试金字塔方法的博客,并且了解到我们应该花更少的时间来编写UI测试,因为它们不利于测试ROI,因为它们通常需要花费很多时间来执行并且易碎它们对UI元素的依赖性。我完全同意这些观点。
但是,问题是,当我们说需要较少数量的UI测试时,是否意味着我们只需要针对优先级为1的情况(或冒烟测试)进行UI测试?相反,UI是用户与之交互的元素,因此我们是否不需要首先确保它没有损坏?我的意思是,当我们说我们需要减少UI测试的数量时,这是否会影响UI交付的质量? 例如,我编写了许多服务测试,并确保后端业务逻辑是完美的,但是如果UI混乱了怎么办?是不是同样重要?
答案 0 :(得分:0)
我认为UI测试的 number 并不那么重要。
我认为“测试自动化金字塔”的意思是,单个UI测试用例涵盖了许多较低级别的测试。例如,一个UI测试用例可能会调用5个API,并调用10个方法。这使UI测试更加脆弱和复杂,因此最好在对API和单元层进行了充分测试之后 编写它们。