软件测试模型之v模型
v模型是瀑布模型的变种,它反映了测试活动和分析设计的关系。也描述了开发和测试的关系。v模型也称为验证和验证模型
下面我们逐一分析一下每个阶段
需求分析:全面了解项目需求,并结合经验评审项目需求是否符合现阶段市场
概要设计:对架构的设计,针对需求进行各个模块功能的设计,接口连接、数据传递等
详细设计:针对具体模块进行深入分析,要求达到伪代码的级别,包括数据库的设计
编码:按照详细设计的模块功能,进行实际的代码
单元测试:针对软件设计的最小单元,也就是程序模块进行检查(函数、类、接口)
集成测试:把通过单元测试的程序,进行有序的组合,重点是测试模块间的接口
系统测试:把项目看作成一个整体,针对功能性能兼容性进行测试
验收测试:项目完成,向客户展示(有客户参与的测试)
我们需要注意的是,v模型的又半部分,可以看到它们都是测试相关的,就是流程中的测试阶段。
总结:
V模型优点:包含底层测试(单元、集成)与高层测试(系统、验收),且每阶段分工明确,便于掌控
V模型缺点:与瀑布模型相似,到了测试阶段,开发已经完成,前期bug往往无法修改,且需求不易变更
改良:每个步骤都进行小型迭代工作
通常我们上线一款产品,都是有约定俗成的代号的:
1)Alpha测试:内测版本
2)Beta测试:公测版本
3)Gamma测试:候选版本(与正式版相差无几)(这个不常见,主要是一些大厂才会有的版本)
软件测试模型之W模型
说明:W模型也叫双V模型
特点:测试伴随着整个软件开发周期,并且测试对象不仅仅是程序,也包括了需求测试和设计测试
原则:需求和设计阶段也应该有测试活动
W模型优点:
1)测试对象不仅仅是程序,而且针对需求文档与设计文档,也同样要测试(之前的小型迭代)
2)更早地介入了测试,可以发现软件最初期的BUG,可以用更低的成本对缺陷进行修复
3)分阶段工作,便于控制整个项目的进程
W模型缺点:
1)依然依赖于线性关系,但有了测试需求的阶段,需求变更的几率较小
2)现阶段互联网公司,很多项目没有文档,所以W模型基本无法适用
3)使用该模型,复杂度很高,对需求和设计测试要求也高,实践起来较为困难
总结:
以上两种模型就是最常见的测试模型了,其中,中小企业用V模型,中大企业用W模型。