软件测试理论-常见的测试模型
前言
测试模型是软件测试工程师必须了解的知识点,了解后在工作中能顺利的进行。
以下是本篇文章正文内容,下面案例可供参考
一、测试模型是什么?
软件测试和软件开发一样,都遵循软件工程原理,遵循管理学原理 。测试专家通过实践总结出了很多很好的测试模型。这些模型将测试活动进行了抽象,明确了测试与开发之间的关系,是测试管理的重要参考依据。。
二、软件测试模型有些?
四种常见(经典)的测试模型:
1.V模型
与瀑布模型有公共的特性,V模型中的过程从左到右,描述了开发的过程到最后测试全经过
优势:清楚地描述了这些测试阶段和开发过程期间各阶段的对应关系 局限性:把测试作为编码之后的最后一个活动,需求分析等前期产生的错误直到后期的验收测试才能发现。
关键词:左到右依次执行
2.W模型
相对于V模型,更好像一些,测试的对象变得不仅仅是程序,增大到还有需求、功能和设计都要测试
优势:测试与开发是同步进行的,明确地标注了生产周期中开发与测试之间的对应关系,从而更好,更快,更全的发现问题 局限性:W模型和V模型都把软件的开发视为需求、设计、编码等一系列串行的活动,无法支持迭代、自发性以及变更调整。
关键词:同步
3.H模型
理论:H模型将测试活动从开发流程完全独立出来,使测试流程形成一个完全独立的流程,将测试准备活动与测试执行活动清晰地体现出来。其他流程可以是任何的开发流程,测试这边只要测试条件成熟(满足测试就绪点),测试执行活动就可进行(与其他流程并发地进行 )
优势: ? 1. 是一个独立的流程,贯穿产品整个生命周期,与其他流程并发地进行 ? 2. 充分的体现了测试过程 ? 3. 软件测试不积极指测试的执行,还包括很多其他的活动(计划、需求分析、用例设计、环境搭建、提交缺陷、评估总结等) ? 4. 软件测试要尽早准备,尽早执行,具有很强的灵活性 ? 5. 软件测试可以根据被测物的不同而分层次进行 ? 6. 不同的测试活动可以是按照某个次序先后进行的,但也可能是反复的,只要某个测试达到准备就绪点,测试执行活动就可以开展
局限性: ? 1. 管理性要求高:由于模型很灵活,必须要定义清晰的规则和管理制度,否则测试过程将非常难以管理和控制 ? 2. 技能要求高:H模型要求能够很好的定义每个迭代的规模,不能太大也不能太小 ? 3. 测试就绪点分析困难:测试很多时候,你并不知道测试准备到什么时候是合适的,就绪点在哪里,就绪点的标准是什么,这就对后续的测试执行的启动带来很大的困难
关键词:独立流程、并发进行
4.X模型
理论:X模型的左边描述的是针对单独程序片段所进行的相互分离的编码和测试,此后将进行频繁的交接,通过集成最终成为可执行的程序,然后再对这些可执行程序进行测试。 优势: ? 1. 很好地处理测试与开发的交接过程(交接的过程是一个时间段,而不是一个点) ? 2. 左边描述的是针对单独程序片段所进行的相互分离的编码和测试,此后将进行频繁的交接,通过集成最终合成为可执行的程序,然后再对这些可执行程序进行测试。 ? 3. 己通过集成测试的成品可以进行封装并提交给用户,也可以作为更大规模和范围内集成的一部分。多根并行的曲线表示变更可以在各个部分发生。 ? 4. X模型还定位了探索性测试,这是给有经验的测试人员在测试计划之外发现更多的软件缺陷。 局限性:探索性测试可能对测试造成人力、物力和财力的浪费,对测试员的熟练程度要求比较高。
关键词:频繁交接、探索
转载:https://zhuanlan.zhihu.com/p/144262517
|