Python编程基础与自动化测试
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

2.2 自动化测试的类型

说到自动化测试的类型,不得不提到测试金字塔的模型。

测试金字塔是由Mike Cohn提出的一个概念,在他的《Scrum敏捷软件开发》一书中有详细的描述。测试金字塔的一个重要论断是:相对于高层次的自动化测试,如通过用户界面进行的端到端的测试,你应该更多地编写低层次的自动化测试,如单元测试。

测试金字塔如图2.1所示。

图2.1

测试金字塔模型主要聚焦于自动化测试的验证层次,以及自动化案例编写和资源投入的程度。它指导我们如何将精力在各个验证层次之间合理分布。

一个更细化的测试金字塔的模型来自Alister Scott。他在2012年发表的一篇文章Introducing the software testing ice-cream cone(anti-pattern)中对测试金字塔进行了更为细致的分层,如图2.2所示。

图2.2

在Alister Scott的金字塔模型中,金字塔顶端的“上帝之眼”用来代表基于人工会话的测试,下面的三层基本上与Mike Cohn的测试金字塔模型相似。只不过Service层被更详细地分成了自动化API测试、自动化集成测试和自动化组件测试三个部分。

小练习

请自行查找资料进行学习,并回答以下问题:

1.单元测试是什么?

2.集成测试是什么?

3.GUI是什么?

4.集成测试和组件测试的区别是什么?

5.在以下的自动化测试中,( )应该运行的最快。

A.单元测试 B.组件测试 C.集成测试 D.GUI测试

6.在以下的自动化测试中,( )的测试案例应该投入最大,案例写得最多?

A.单元测试 B.组件测试 C.集成测试 D.GUI测试