软件测试模型

   软件测试和软件开发一样,都遵循软件工程原理,遵循管理学原理。测试专家通过实践总结出了很多很好的测试模型。这些测试模型将测试活动进行了抽象,明确了测试与开发之间的关系,是测试管理的重要参考依据。

四种经典模型

V模型

   在软件测试方面,V模型是最广为人知的模型。和瀑布开发模型有着一些共同的特性,由此也和瀑布模型一样受到了批评和质疑。V模型中的过程从左到右,描述了基本的开发过程和测试行为。

V模型的价值:在于它非常明确地表明了测试过程中存在的不同级别,并且清楚地描述了这些测试阶段和开发过程期间各阶段的对应关系。

局限性:把测试作为编码之后的最后一个活动,需求分析等前期产生的错误直到后期的验收测试才能发现。

W模型
W模型是V模型的发展,强调的是测试伴随着整个软件开发周期,而且测试对象不仅仅是程序,需求、功能和设计同样要测试。测试与开发是同步进行的,从而有利于尽早地发现问题。
局限性:W模型和V模型都把软件的开发视为需求、设计、编码等一系列串行的活动,无法支持迭代、自发性以及变更调整。
X模型
X模型左边描述的是针对单独程序片段所进行的相互分离的编码和测试,此后将进行频繁的交接,通过集成最终成为可执行的程序,然后再对这些可执行程序进行测试。已通过集成测试的成品可以进行封装并提交给用户,也可以作为更大规模和范围内集成的一部分。多根并行的曲线表示变更可以在各个部分发生。由图中可见,X模型还定位了探索性测试,这是不进行事先计划的特殊类型的测试,这一方式往往能帮助有经验的测试人员在测试计划之外发现更多的软件错误。但这样可能对测试造成人力、物力和财力的浪费,对测试员的熟练程度要求比较高。
H模型
H模型中,软件测试过程活动完全独立,贯穿于整个产品的周期,与其他流程并发地进行,某个测试点准备就绪时,就可以从测试准备阶段进行到测试执行阶段。软件测试可以尽早的进行,并且可以根据被测物的不同而分层次进行。
这个示意图演示了在整个生产周期中某个层次上的一次测试“微循环”。图中标注的其他流程可以是人员的开发流程,例如设计流程或者编码流程。也就是说,只有测试条件成熟了,测试准备活动完成了,测试执行活动就可以进行了。
H模型揭示了一个原理:软件测试是一个独立的流程,贯穿产品整个生命周期,与其他流程并发地进行。H模型指出软件测试要尽早准备,尽早执行。不同的测试活动可以是按照某个次序先后进行的,但也可能是反复的,只要某个测试到达准备就绪点,测试执行活动就可以开展。
 
各模型的特点
V模型—非常明确地标注了测试过程中存在的不同类型的测试
W模型—非常明确地标注了生产周期中开发与测试之间的对应关系
X模型—这个模型指出整个测试过程是在探索中进行的
H模型—软件测试是一个独立的流程,贯穿产品整个生命周期,与其他流程并发地进行。

posted on 2014-09-23 19:50  小西红柿  阅读(119)  评论(0)    收藏  举报

导航