测试(5) - 概念篇(3)-- 常见的测试模型

测试模型:

文章目录

如果你是第一次看这篇博客,可以看一看我之前关于 软件测试--概念篇 的博客介绍:
测试(3) - 概念篇(1)-- 什么是需求 && 软件生命周期
测试(4) - 概念篇(2)-- 常见的开发模型

测试模型中有两个非常重要且具有标志性的测试模型:V模型和W模型

1. V模型:

V模型最早是由PaulRook在20世纪80年代后期提出的,目的是改进软件开发的效率和效果。是 瀑布模型 的变种

单元测试,是对代码的最小单元进行测试。

最小单元,是人为规定的。

单元测试,一般是一个独立功能的测试,是由实现了这个功能的程序员来进行测试的。也就是说,单元测试,一般是由开发人员来进行的

但是,存在极少数的企业,会招聘专业的单元测试人员。

图中的测试工作讲解:

  1. 单元测试,是依据详细设计文档,进行测试的。
  2. 集成测试,是依据概要设计来进行测试的。一般也是由开发人员编写测试代码,进行测试。
  3. 系统测试,是依据需求分析与系统(需求文档)来进行测试的,是由 测试人员 进行测试,利用 测试用例 进行测试,最后生成测试报告。
  4. 验收测试,是 甲方(用户)进行验收,测试软件(产品)的功能是否完全,使用体验是否符合预期,界面显示是否符合预期等等。

优点

  • 清晰划分了测试过程中的不同测试类型 ,明确阐述了各测试阶段与软件开发各阶段的对应关系,有助于提升测试质量与执行效率

  • V 模型明确界定了不同层级测试的核心目标:

    • 单元测试与集成测试:验证程序执行是否符合软件设计要求;一般由开发人员进行测试
    • 系统测试:验证系统功能、性能等质量特性是否达到系统指标;由测试人员进行测试
    • 验收测试:确认软件实现是否满足用户需求或合同约定。由用户进行验收测试

缺点

仅将测试视为编码完成后的一个阶段,未在需求阶段就介入测试,与瀑布模型存在相同的局限性,不利于早期发现缺陷

2. W模型:

V模型中未将测试前置的问题在W模型中得以解决。

W 模型增加了软件各开发阶段中应同步开展的验证与确认活动。

它由两个相互对应的 V 型模型组成 ,分别代表测试过程开发过程 ,清晰体现了测试与开发的并行关系

核心特点

  • 测试对象不再局限于程序,需求、设计等文档同样需要进行测试。
  • 测试与开发同步进行 ,支持尽早介入、尽早发现缺陷

优点:

  • 有助于尽早、全面地发现问题
    例如:在需求分析完成后,测试人员即可参与需求的验证与确认,及早定位缺陷
  • 通过对需求的测试,可提前识别项目难度与测试风险,及时制定应对方案,有效缩短总体测试周期,加快项目进度。

缺点:

  • 将需求、设计、编码等活动视为串行执行;
  • 测试与开发保持线性前后关系,上一阶段完全结束后才能启动下一阶段工作;
  • 偏重流程,无法支持敏捷开发模式(要求轻文档,轻过程),难以适应现代软件开发复杂多变的场景,无法有效解决测试管理面临的困境。

3. 总结

V模型:

  • 优点:清晰划分测试类型,可提升测试质量与执行效率
  • 缺点:不利于早期发现缺陷

W模型:

  • 优点:有助于尽早、全面地发现问题
  • 缺点:偏重流程,无法支持敏捷开发模式

最后,如果这篇博客能帮到你的,请你点点赞,有写错了,写的不好的,欢迎评论指出,谢谢!

下一篇博客:测试(6) - bug篇(上)

相关推荐
测试老哥36 分钟前
Postman获取token并设置token依赖步骤
自动化测试·软件测试·python·测试工具·测试用例·接口测试·postman
树码小子9 小时前
测试(6) - bug篇(上)
软件测试·bug
程序员小远2 天前
接口测试知识总结
自动化测试·软件测试·python·测试工具·职场和发展·测试用例·接口测试
测试秃头怪2 天前
Postman中变量的使用
自动化测试·软件测试·python·测试工具·测试用例·接口测试·postman
测试19983 天前
UI自动化测试:窗口截图&文件上传实战
自动化测试·软件测试·python·selenium·测试工具·职场和发展·测试用例
降临-max3 天前
Charles-抓包分析、HTTPS、弱网测试、Breakpoint
软件测试·charles·抓包工具·弱网测试·断点测试