软件测试模型

与开发模型一样,软件测试根据不同的测试对象、测试背景可采用不同的测试模型实施测试活动·。软件测试模型一般分为V模型、W模型、X模型H模型、明捷模型等。

V模型

v模型是软件所有测试模型中最熟悉的一种模型,他是从瀑布研发模型演变而来的测试模型,如下图所示。

V模型的流程是从上到下、从左到右,软件研发人员进行需求分析、概要设计、详细设计、编码一系列研发活动后,生成的测试版本。

测试工程师则在研发人员编码过程中,对其生成的函数或类进行单元测试,测试通过后,进行组件集成,实施集成测试,然后模拟用户实际业务流程执行

系统测试,验收测试。该过程呈线性发展趋势,需求在早期存在缺陷时,可能最后环节才发现,并且测试工程师测试活动严重滞后于开发活动。

优点:1)既由底层测试又有高层测试

2)将开发阶段清楚的表现出来,便于控制开发过程,当所有阶段都结束时,软件开发就结束了

缺点:1)容易使人理解为测试是软件开发的最后一个阶段

2)由于它的顺序性,当编码完成后,正式进入测试时,这时发现的一些bug可能不容易找到其根源,并且代码修改起来很困难

3)实际中,由于需求变更很大,导致要重复变更需求、设计、编码、测试,返工量大

W测试模型

W模型是在V模型的基础上演变而来,一般又称为双V模型。在V模型中,研发活动没有完成、无任何输出物,测试工程师无法开展测试工作,相对而言,测试活动严重滞后。

优点:1)将测试贯穿到整个软件的生命周期中,切除了代码要测试,需求、设计等都要测试

2)更早的介入到软件开发中,能尽早的发现缺陷进行修复

3)测试与开发独立起来,并与开发并行

缺点:1)对有些项目,开发过程中根本没有文档产生,故W模型无法使用

2)对于需求和测试技术要求很高,实践起来很困难

敏捷测试模型

测试不仅仅是测试软件本身,还包含了软件测试的过程和模式。产品多数在发布后才发现很多问题,多数可能是软件开发过程出的问题,因此测试除了针对于软件的质量,即软件做了正确的事情,以及软件做了应该做的事情以外,敏捷的测试团队还要保证整个软件开发过程是正确的是符合用户需求的。

敏捷开发的最大特点是高度迭代,有周期性,并且能够及时、持续地响应客户的频繁反馈。敏捷测试即是不断修正质量指标,正确建立测试策略,确认客户的有效需求得以圆满实现和确保整个生产的过程安全的、及时的发布最终产品。敏捷测试人员因而需要在活动中关注产品需求,产品设计,解读源代码;在独立完成各项测试计划、测试执行工作的同时,敏捷测试人员需要参与几乎所有的团队讨论,团队决策。作为一名优秀的敏捷测试人员,他(她)需要在有限的时间内完成更多的测试的准备和执行,并富有极强的责任心和领导力。

更重要的是,优秀的测试人员需要能够扩展开来做更多的与测试或许无关,但与团队共同目标直接相关的工作。他(她)将帮助团队其他成员解决困难、帮助实现其预期目标,发扬高度协作精神以帮助团队的最终获取成功。需要指出的是,团队的高度协作既需要团队成员的勇敢,更需要团队成员的主动配合和帮助。对于测试人员如此,对于开发、设计人员,其他成员也是如此。

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2019年8月24日
下一篇 2019年8月25日

相关推荐