软件测试模型--复习

上一篇 / 下一篇  2012-09-20 13:57:27 / 个人分类:测试管理

 软件测试模型在我印象里最深的就是V模型,当别人问到我双V模型或W模型,X模型或H模型时,可能我就回答不上来了。今天在学习《Sizing up Automation Candidates – Selecting Which Tests,When To Automate Them,and Which To Take Off the Ticket Entirely》文章时,谈到了开发项目采用不同模型对自动化测试的影响,但是为了更好地学习了解,学习了解了软件测试中的各种模型及其优缺点。
 
  软件测试模型包含V模型,W模型(又叫双V模型),X模型和H模型。
  各模型的过程图见后面(图片操作真不好弄,弄了那么久都显示不全)
 
  V 模型指出,单元和集成测试是验证程序设计,开发和测试组应坚持程序的执行是否满足软件设计的要求;系统测试应当验证系统设计,检测系统功能、性能的质量特性是否达到系统设计的指标;由测试人员和用户进行软件的确认测试和验收测试,追溯软件需求说明书进行测试,以确定软件的实现是否满足用户需求或合同要求。
  
   V模型存在一定的局限性:仅仅把测试过程作为需求分析,概要设计,详细设计后的一个阶段,容易让人理解为测试只是作为软件开发的一个阶段,仅仅是针对程序本身代码进行测试,寻找错误,而未对需求进行测试,以及概要设计,详细设计等文档本身存在错误,对于设计中的逻辑等是否存在问题并未进行测试,这也误导了部分测试工程师,让他们理解测试仅仅为对程序测,实际上,我们的测试包含了对程序/软件文档进行测试和程序本身测试。
 
 
  V模型的局限性在于没有明确地说明早期的测试,不能体现“尽早地和不断地进行软件测试”的原则。在V模型中增加软件个开发阶段应同步进行的测试,被演化为一种W模型,因为时间上开发是V,测试也是与此相并行的V。
   相对于V模型,W模型更科学,W模型强调测试伴随着整个软件开发周期,而且测试的对象不仅仅是程序,需求,功能和设计同样要测试。只有相应的开发活动完成,我们就可以开始测试,测试与开发同步进行,更有利于尽早地发现问题。以需求为例,需求分析一完成,就可以对需求进行测试,而不是等到最后才进行针对需求的验收测试。
   根据W模型的要求,一旦有文档提供,就要及时确定测试条件,以及编写测试用例。当需求被提交后,就需要确定高级别的测试用例来测试这些需求。当概要设计编写完成后,就需要确定测试条件来查找该阶段的设计缺陷。
 
   W 模型也有局限性。W模型和v模型都是把软件的开发视为需求,设计,编码等一系列串行的活动,无法支持迭代,自发性以及变更调整。
 
   X模型也是对V模型的改进,X模型提出针对单独的程序片段进行相互分离的编码和测试,此后通过频繁的交接,通过集成最终合成为可执行的程序。然后再对这些可执行程序进行测试。已通过集成测试的成品可以进行封装并提交给用户,也可以作为更大规模和范围内集成的一部分。多跟并行的曲线表示变更可以在各个部分发生。X模型中还定位了探索性测试,这是不进行事先计划得特殊类型的测试,这一方式往往能帮助有经验的测试人员在测试计划之外发现更多的软件错误。但这样可能对测试造成人力,物理和财力的浪费,对测试员的熟练程度要求比较高。
 
  H模型中,软件测试过程获得完全独立,贯穿于整个产品的周期,与其他流程并发地进行,某个测试点准备就绪时,就可以从测试准备阶段进行到测试执行阶段。软件测试可以尽早地进行,并且可以根据被测物的不同而分层次进行。
 
  H模型揭示的一个原理:软件测试是一个独立的流程,贯穿产品整个生命周期,与其他流程并发地进行。H模型指出软件测试要尽早准备,尽早执行。
 
  
  
   
 
 
 
 

TAG:

 

评分:0

我来说两句

Open Toolbar