测试模型
在软件开发的实践过程中,人们总结了很多开发模型,比如瀑布模型,原型模型,螺旋模型,增量模型,激进模型,快速软件开发以及统一过程等等,这些模型对于软件开发过程具有很好的指导作用,但是在这些过程中,并没有充分的强调测试的价值,也没有给测试以足够的重视,利用这些模型无法更好的指导测试实践。
V模型
测试模型中的V模型是最具有代表意义的模型,V模型最早是由paul rook在20世纪80年代后期提出的,V模型在英国国家计算机中心文献中发布,旨在改进软件开发的效率和效果。在传统的开发模型中,比如瀑布模型,人们通常把测试过程作为在需求分析,概要设计,详细设计和编码全部完成之后的一个阶段,尽管有时测试工作会占用整个项目周期一半的时间,但是有人仍然认为测试只是一个收尾工作,而不是主要的过程。V模型的推出就是对此种认识的改进。V模型是软件开发瀑布模型的变种,它反映了测试活动与分析和设计的关系,从左到右,描述了基本的开发过程和测试行为,非常明确的标明了测试过程中存在的不同级别,并且清楚的描述了这些测试阶段和开发过程期间各阶段的对应关系。
V模型存在一定的局限性,它仅仅把测试过程作为在需求分析,概要设计,详细设计及编码之后的一个阶段。容易使人理解为测试是软件开发的最后一个阶段,主要是针对程序进行测试寻找错误,而需求分析阶段隐藏的问题一直到后期的验收测试才被发现。
W模型
V模型的局限性在于没有明确地说明早期的测试,不能体现“尽早地和不断的进行软件测试”的原则。在V模型中增加软件各开发阶段应同步进行的测试,被演化为一种W模型,因为实际上开发是“V”,测试也是与比相关行的“V”。基于“尽早地和不断的进行软件测试”的原则,在软件需求和设计阶段的测试活动应遵循IEEE std1012-1998《软件验证和确认》的原则。
W模型也是有局限性的,W模型和V模型都把软件开发视为需求,设计,编码等一系列串行的活动,软件开发和测试保持一种线性的前后关系,需要有严格的指令表示上一阶段完全结束,才可正式开始下一阶段,这样就无法支持迭代,自发性以及变更调整。对于当前很多文档事后补充,或根本没有文档的做法下(已成为一种开发的文化),开发人员和测试人员都面临同样的困惑。
测试模型除了V和W模型,还有H模型,X模型和前置测试模型。
该文章对你有帮助吗,求分享转发: 分享到QQ空间 分享给QQ好友