-
1 电子教材
-
2 PPT
-
3 实训任务
人们在几十年的开发实践中总结出许多开发模型,如瀑布模型、原型模型、增量模型等,测试是软件全生命周期中一个重要的组成部分,随着人们对测试的重视程度与日俱增,人们意识到以往的开发模型都未强调测试的作用,无法指导测试实践。软件测试与软件开发一样,包含一系列有计划的系统性活动,其流程和方法也亟需相应模型的指导。软件测试专家通过实践活动总结出很好的测试过程模型,这些模型对测试活动进行抽象,并与开发活动有机结合,大大有助于提高测试过程的质量,并进而提高测试结果的准确性和有效性。典型的测试过程模型包括V 模型、W 模型、H 模型等。下面逐一来做介绍。
RAD( Rap Application Development)是软件开发过程中的一个重要模型,称为快速应用开发模型。其模型构图形似字母V ,所以又称为V 模型。
V模型是软件开发瀑布模型的变种,它反映了测试活动与分析和设计的关系,从左到右,描述了基本的开发过程和测试行为,明确地标明了测试工程中存在的不同级别,清楚地描述了这些测试阶段和开发过程期间各阶段的对应关系。
如图2-8所示,V模型大休可以划分为下面几个不同的阶段步骤.即需求分析和系统设计、概要设计、详细设计、编码实现、单元测试、集成测试、系统测试、验收测试。
V 模型中,单元测试是基于代码的测试,最初由开发人员执行,以验证其可执行程序代码的各个部分是否已达到了预期的功能要求;集成测试验证了多个单元之间的集成是否正确,并有针对性地对详细设计中所定义的各单元之间的接口进行检查;在所有单元测试和集成测试完成后,系统测试开始模拟系统的运行,以验证系统是否达到了在概要设计中所定义的功能和性能;系统测试应检测系统功能、性能的质量特性是否达到系统要求的指标;验收测试确定软件的实现是否满足用户需要或合同的要求。
但是V模型也存在一定的局限性,它仅仅把测试作为在编码之后的一个阶段,测试是针对程序运行的寻找错误的活动,在需求分析、系统设计阶段引入的错误需要到系统测试和验收测试时才发现。

图2-7 软件测试过程V模型
W模型是从V模型演化过来的,实际上开发是一个V 模型,测试也是与此并行的一个V 模型。基于“尽早地和不断地进行软件测试”的原则,在软件的需求和设计阶段的测试活动应遵循《软件验证和确认(Verification&Validation)》(IEEE std1012-1998)原则。一个基于V&V 原理的W 模型如图2-9所示。
W 模型强调:测试伴随着整个软件开发周期,而测试的对象不仅仅是程序,需求、设计等同样要测试,也就是说,测试与开发是同步进行的。W 模型有利于尽早全面地发现问题。例如,需求分析完成后,测试人员就应该参与到对需求的验证和确认活动中,以尽早地找出缺陷所在。同时,对需求的测试也有利于及时了解项目难度和测试风险。及早制定应对措施,这将显著减少总体测试时间。加快项目进度。

图2-8 软件测试过程W模型
W模型也存在局限性。在W模型中,需求、设计、编码等活动被视为是串行的,同时,测试和开发活动也保持着一种线性的前后关系,上一阶段完全结束,才可正式开始下一阶段工作,这样就无法支持迭代的开发模型。对于当前软件开发复杂多变的情况,W 模型并不能完全解除测试管理面临的困惑。
Ø 对软件测试正确的认识
Ø 软件测试遵循的基本原则
Ø 软件测试的分类
Ø 软件测试的过程模型

