自动化测试金字塔描述了自动化测试的3个层次:单元测试和组件测试的自动化、验收测试的自动化和GUI测试的自动化。而在自动化测试金字塔之上则是手工测试。

自动化测试金字塔如下图所示:

自动化测试金字塔实际上向测试人员展现了自动化测试的实现策略:先把更多的精力放在金字塔的底层,实现单元测试和组件测试的自动化,再逐步实现更高层的验收测试和GUI测试的自动化。

  • 金字塔底层——单元测试和组件测试的自动化

这一层次的测试代码最多,是自动化测试投资回报率最高的部分。因为单元测试和组件测试能够确保组成软件的基本单元是正确的,单元之间的接口也是正确的,这为开发出正确的软件打下坚实的基础。这部分测试工作实现自动化,自然会给项目带来较高的回报。

一般情况下,这部分测试代码由开发人员编写和维护。

  • 金字塔中层——验收测试的自动化

这一层次是面向业务的自动化测试。由于实现业务测试的自动化只需调用软件的编程接口,不依赖于图形界面,所以测试代码也比较容易开发和维护,实现测试的自动化也拥有较高的投资回报率。

通常,本层的测试代码由测试人员编写,开发人员会提供必要的技术支持,例如提供面向业务领域的API。

  • 金字塔顶层——GUI测试的自动化

这一层次是基于图形界面的自动化测试。由于图形界面改动频繁,所以测试代码需要经常修改。而且,基于图形界面的测试代码难以编写、调试和修正,受影响的因素较多,所以它们通常需要高昂的维护代价。因此,该层次的测试自动化的投资回报率最低,数量相对较少。

本层次的测试代码通常由测试人员开发和维护。

  • 金字塔上方——手工测试

这一层次是测试人员在自动化测试的基础之上,对尚未覆盖的领域实施的手工测试。

手工测试是测试人员借助合适的工具,对自动化测试没有覆盖的区域进行测试。

上述自动化测试金字塔只是一个理想的模型,实际项目的自动化测试未必能够按照这个自动化测试的策略进行,这需要根据项目的资源、进度以及业务目标综合考虑才行。

可行的自动化测试策略需要测试人员与开发人员及其他项目利益相关方讨论来确定。

虽然这个自动化测试金字塔模型是我们追求的目标,但是金字塔不是一天建成的。测试人员可以从影响大、成本小的自动化测试开始,积小成大,逐步建立自动化测试用例,以稳健的策略去推动自动化测试开发。

最后: 下方这份完整的软件测试视频教程已经整理上传完成,需要的朋友们可以自行领取【保证100%免费】

软件测试面试文档

我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

在这里插入图片描述

在这里插入图片描述

Logo

更多推荐