常见的软件测试模型有V模型和W模型(敏捷测试除外)
测试阶段步骤的介绍
- 单元测试
单元测试属于白盒测试,大部分情况是由开发人员进行,主要依据是系统设计文档,测试目标是代码模块(函数),测试方法是通过写测试方法来进行测试。 - 集成测试
集成测试属于灰盒测试,大部分情况是由开发人员进行,主要依据是系统设计文档和需求文档,测试目标是接口,主要看不同代码模块(或者软件和硬件)之间的接口调用是否正确,测试方法为接口测试的方法。 - 系统测试
系统测试阶段是全面测试阶段,由测试人员进行,主要依据是需求文档,但也需要接口文档(接口测试)、系统设计文档(了解架构,性能测试)等文档。
系统测试包括冒烟测试、功能测试、UI测试、兼容性测试、性能测试、安全性测试。健壮性测试等 - 验收测试
验收测试属于黑盒测试,执行人员为用户,主要依据是需求文档,其目的是确保软件的实现是否满足用户的需求(合同的需求)
V模型
V模型是基于瀑布流开发模式的,整个过程把开发和测试明显区分开,两者是串行的关系,分割节点为开发对产品进行编码
-
局限性
该模型把测试放在了整个开发流程的最后阶段,并没有让测试尽早介入测试(需求阶段就应该介入),这样会使bug的修复成本很高(bug越早发现,修复成本越低)
V模型.jpg
W模型
W模型是由两个V模型组成的,分别代表了开发和测试。从图中可以看出,开发和测试是并行关系。测试从需求分析阶段甚至用户需求评估阶段就参与进来,从而能够尽早找出潜在的bug,降低bug的修复成本,提高测试的效率,加快项目的进度。
- 优点
1、开发和测试活动可以同步进行
2、测试的对象不仅是程序,可以是:需求文档、概要设计文档、详细设计文档、接口文档、程序等
3、能够更早发现bug,降低修复成本,加快项目的进度 -
局限性
在W模型中,需求分析、概要设计、详细设计、编码等活动依旧是串行的。同理,开发和测试的活动也是保持一种线性的前后顺序,需要上一阶段完全结束,才能进行下一阶段的工作。所以,该模型并不能支持敏捷开发模式。
W模型.jpg
网友评论