测试模型的分类

  • 1 引言
  • 2 金字塔
    • 2.1 金字塔模型 引入
    • 2.2 金字塔弊端
    • 2.3 金字塔图形
  • 3 冰淇淋
    • 3.1 冰淇淋模型 引入
    • 3.2 冰淇淋模型 优缺点
    • 3.2.1 缺点
    • 3.2.2 优点
    • 3.2 冰淇淋图形
  • 4 冠军杯
    • 4.1 冠军杯模型 引入
    • 4.2 冠军杯模型厉害之处
    • 4.3 应用场景
    • 4.4 冠军杯图形
  • 5 总结

1 引言

记得小鱼在上一篇聊到三种高性价比的测试,有的测开的同学就反馈,写的还过得去,希望再多讲一些测开领域资深的内容。
好的, 安排~ ~
我们今天就来聊一聊,测试模型
我们都知道,项目有项目的模型,
那么,测试策略,是否也有模型呢?

2 金字塔

2.1 金字塔模型 引入

金字塔模型,是一种非常重要也很常见的软件测试策略模型,在很多场合被奉为“金科玉律” 。
测试金字塔告诉我们,在单元测试,集成测试和端到端测试三个阶段的测试资源投入,应该满足接近7:2:1的关系。

金字塔模型中,软件测试的重心是在开发阶段的单元测试
通过测试左移和质量内建,从源头上保障软件质量,实现预防bug(而非发现bug)的目标。

单元测试还具有实现成本低和执行速度快的特点,因而可以很容易地与持续集成和敏捷开发相结合,共同实现软件的快速迭代。

这在《深聊测开领域之:三种高性价比测试方法》博文中,有介绍。

通过将大部分问题消灭在单元测试阶段,高成本,速度慢的端到端测试就可以更加聚焦。
通过将有限的资源投入到主干流程和核心业务的端到端测试上,我们可以保障在快速迭代的过程中,核心业务不受影响。

2.2 金字塔弊端

尽管其具有时代的先进性,但测试金字塔模型也是有短板的
由于金字塔模型过分依赖单元测试,而单元测试的测试对象是代码,离最终的用户场景可能存在距离。因此,单元测试即使很充分,即使实现了100%的代码覆盖率,其有效性仍然存在不足,从而降低我们对软件质量的信心。

2.3 金字塔图形

不得不说,金字塔模型是一种进步的模型,尤其是与它的前任模型相比。

3 冰淇淋

3.1 冰淇淋模型 引入

金字塔模型的前任,是倒金字塔,俗称 “冰淇淋模型”,也是在很久之前,非常主流的一种测试策略模型。

冰淇淋模型与金字塔模型完全相反它更强调端到端测试

也就是说,我们主要依靠端到端测试来保障软件质量

3.2 冰淇淋模型 优缺点

3.2.1 缺点

由于端到端测试投入大,速度慢,周期长,经常需要数周甚至数月完成测试,无法做到快速迭代,因而在敏捷时代被金字塔模型取代。

3.2.2 优点

相比单元测试,端到端测试无疑可以给我们更高的信心
端到端测试模拟的是用户的实际行为,测试的是系统整体,更有能力发现全局的,对用户直接产生影响的问题,因而测试有效性更高。

对于一些对质量要求极其苛刻,发布周期较长的系统级软件,例如电信软件,操作系统等,仍然十分依赖端到端测试。因此,冰淇淋模型在这些场景中仍然是实用的。

3.2 冰淇淋图形

4 冠军杯

4.1 冠军杯模型 引入

由于金字塔模型的缺点,导致,我们需要一个更加均衡的模型,需要同时具备金字塔模型与冰淇淋模型优点,随着不断的发展,这种新的模型就诞生了,即"冠军杯模型"。

4.2 冠军杯模型厉害之处

与金字塔模型和冰淇淋模型不同的是,冠军杯模型强调集成测试的重要性
这种模型的出发点在于:

  • 相比端到端测试,集成测试的执行速度更快;
  • 相比单元测试,集成测试的有效性更高;
  • 在单元测试,集成测试和端到端测试中,最能够兼顾执行速度,实现成本和测试有效性的,就数集成测试了。

4.3 应用场景

当然,于金字塔模型和冰淇淋模型相比,冠军杯模型是一种比较理想化的模型。
冠军杯模型能不能成功,取决于集成测试是否真的成本低且有效性高。
实际上,冠军杯模型只在特定的场合使用,它的典型应用场景是Web应用测试

对于Web应用,集成测试对应服务端测试接口测试。在基于Restful的接口测试中,用例执行速度非常快,通常在毫秒级。并且,大量的业务逻辑位于服务端,大多数软件问题也源自服务端,因此接口测试只要用例设计合理,其有效性可以期待。

事实上,评价测试还有另外一个维度。那就是在重构代码和修复bug(它们是比新特性开发更高频的代码活动)时,测试用例是否经常需要适配

单元测试与代码的耦合性一般较高,因此我们在重构代码或修复bug时,经常不得不对单元测试用例进行修改。而接口测试测试的是软件对外的接口,不易发生变化,因而用例不需频繁更新,维护成本也就更低。

鉴于在Web应用中,接口测试具有执行速度快,测试有效性高,维护成本低的优势,值得大力投入。
冠军杯因而是一种更适合的模型。

4.4 冠军杯图形

5 总结

最后,我用一张图表,来总结 冰淇淋,金字塔、冠军杯 三个模型的特点。

模型 pros cons 适用场景
冰淇淋 测试有效性高,信心指数高 整体投入高,迭代速度慢 对质量要求苛刻的系统级软件
金字塔 整体成本低,迭代速度快 测试有效性低,信心指数低 规模较小,功能单一的libary
冠军杯 整体成本低,迭代速度快,信心指数高 适用条件苛刻 Web应用,微服务应用

深聊测开领域之:测试策略模型有哪些?相关推荐

  1. 深聊测开领域之:三种高性价比测试方法

    高性价比测试 1 引言 2 单元测试 2.1 单元测试引入 2.2 投入产出比 3 冒烟测试 3.1 冒烟测试引入 3.2 投入产出比 4 灰度测试 4.1 软件的依赖 4.2 引入灰度环境 4.3 ...

  2. 深聊测开领域之:一文搞懂什么是敏捷测试,如何做敏捷测试,建议先收藏再学习。

    敏捷测试 1.引言 2.解析敏捷测试 2.1 含义 2.2 特点 2.3 为什么要进行敏捷测试 2.4 敏捷测试与传统测试对比 2.5 如何迁移敏捷测试 2.6 敏捷测试成功因素 3.总结 1.引言 ...

  3. 个人面经整理深信服测开

    Linux指令 Ps命令查找与进程相关的pid号 Ps a 显示现在终端机下的所有程序 Ps -A 显示所有程序 Ps e 列出程序时,显示每个程序所需要的环境变量 Ps f 用ASCII字符显示树状 ...

  4. 互联网大厂测开领域调研

    目录 一.调研范围与内容 二.联盟平台竞品调研 对比头条&阿里 三.创新探索

  5. 【饭谈】必看,软件测试/测开的 学习路线(中上)

    ❝ 大家好,我就是业界最火测开公众号的博主[我去热饭] ❞ 在上期文章发布后,有超过百位的粉丝私聊询问测开路线,从这些问题中我发现了一个现象,就是大家很反感那种比较大和空的回答. 比如有人群里问测开要 ...

  6. 大华技术股份有限公司测开笔试题分享

    某华股份测开笔试题 测试开发岗位社招笔试题: 为了防止被黑客取到客户输入的密码,某银行在登陆软件上以屏幕输入法输入密码,该输入法有9个按钮,每个按钮上有不多于3个字母,字母有先后顺序,按第一个字母需要 ...

  7. 美团 测开|测试开发 面试真题|面经 汇总

    美团测开一面 时长:1小时 介绍一下项目 说一下为什么选择测开 项目中用到的ES说一下 你项目实现过程中有没有遇到什么问题? 微信朋友圈的功能性测试,要从那些方面考虑 测试的一般流程 linux用的多 ...

  8. 初识测开/测试- 细节狂魔 - 测开/测试方向

    文章目录 前言 什么是软件测试? 实战练习 软件测试和软件开发的区别 技能 && 难易程度 杂项:薪资,工作环境,工作压力 发展前景 一个经典面试题:软件测试 和 软件开发中的调试 有 ...

  9. 软件测试 | 测试开发 | 从外行到外包,从手工测试到知名互联大厂测开 这个90后小姐姐是怎么腾飞的?

    本文为霍格沃兹测试学院优秀学员跳槽笔记,测试开发进阶学习文末加群. 编者按:本文的主人公小姐姐是我们自动化班的学员,小姐姐人很好,很努力也很优秀.希望她的分享能够帮助到一每位需要帮助的小伙伴,相伴学习 ...

最新文章

  1. HDU1527(博弈论)
  2. 计算机显卡敀主要性能参数,显卡性能看什么参数(新手必备的显卡性能知识全解)...
  3. arduino 入门套件_计算机视觉入门套件
  4. oledb excel java_C#中Excel 2016的oledb连接字符串
  5. 基于linux的MsQUIC编译及样例运行
  6. 数学基础 —— 线性代数
  7. 非结构化文件转移服务器,非结构化数据存储管理方法,服务器和系统 Unstructured data storage management method, and a system server...
  8. ASP.NET错误处理的方式(一)
  9. java 手机推荐_Java一样也智能 中低端手机上网助手推荐
  10. 第六课:计算两数的GCF(最大公因数)(基于AndroidStudio3.2)
  11. 03_Unity小窍门100条(下)
  12. 艾奇android视频格式转换器,艾奇全能视频格式转换器
  13. Ubuntu零基础教学-Ubuntu下如何创建.txt记事本文件
  14. 基于注意力机制的超分辨率重建汇总
  15. GoogleChrome禁止访问端口解决
  16. Django刨坑记-- Anaconda3 环境报错
  17. Android手机直播(三)声音采集
  18. 2006年江苏专转本计算机试卷答案,2006年度江苏省普通高校专转本计算机试卷.doc...
  19. CRM后台管理系统:HTML+CSS+JavaScript制作企业网站后台管理系统模板网站(46个页面)
  20. altera fpga 型号说明_ALTERA的FPGA命名规则(转载)

热门文章

  1. 巴什博弈+威佐夫博弈
  2. 暗黑血统2android,暗黑血统2安卓版下载_暗黑血统2游戏下载-d7ol休闲益智app
  3. 密信(Mesince)首创全自动邮件加密,颠覆传统邮件加密软件
  4. Finally 的使用方式
  5. Redis报错:ERR Operation against a key holding the wrong kind of value 解决处理
  6. 2022年湖南省二级注册建筑师建筑结构与设备练习题及答案
  7. TechSmith Camtasia Studio 9录屏提 示video codec open failed 错误
  8. c语言 switch case 字符串,c语言switch case用法详解
  9. latex+texlive在插入参考文献时的一些问题
  10. iPhone-内存管理