v 模型
在软件测试方面, V 模型是最广为人知的模型, 尽管很多富有实际经验的测试人员还是不太熟悉 V 模型, 或者其它的模型. V 模型已存在了很长时间, 和瀑布开发模型有着一些共同的特性, 由此也和瀑布模型一样地受到了批评和质疑. V 模型中的过程从左到右, 描述了基本的开发过程和测试行为. V 模型的价值在于它非常明确地标明了测试过程中存在的不同级别, 并且清楚地描述了这些测试阶段和开发过程期间各阶段的对应关系.
局限性: 把测试作为编码之后的最后一个活动, 需求分析等前期产生的错误直到后期的验收测试才能发现. 测试工作在编码完成后才开始进行, 不符合软件测试的 "3 早" 原则.
w 模型
在软件测试方面, V 模型是最广为人知的模型, 尽管很多富有实际经验的测试人员还是不太熟悉 V 模型, 或者其它的模型. V 模型已存在了很长时间, 和瀑布开发模型有着一些共同的特性, 由此也和瀑布模型一样地受到了批评和质疑. V 模型中的过程从左到右, 描述了基本的开发过程和测试行为. V 模型的价值在于它非常明确地标明了测试过程中存在的不同级别, 并且清楚地描述了这些测试阶段和开发过程期间各阶段的对应关系.
局限性: 把测试作为编码之后的最后一个活动, 需求分析等前期产生的错误直到后期的验收测试才能发现. 测试工作在编码完成后才开始进行, 不符合软件测试的 "3 早" 原则.
W 模型: 用户需求 (用户需求 V&V, 验收测试设计与评审)→→需求分析 (需求 V&V, 系统测试设计与评审)→→概要设计 (概要设计 V&V, 集成测试设计与评审)→→详细设计 (详细设计 V&V, 单元测试设计与评审)→→编码实现 (单元测试)→→模块集成 (集成测试)→→实施 (系统测试)→→交付 (验收测试).
W 模型也有局限性, W 模型和 V 模型都把软件的开发视为需求, 设计, 编码等一系列串行的活动, 无法支持迭代, 自发性以及变更调整.
x 模型
X 模型也是对 V 模型的改进, X 模型提出针对单独的程序片段进行相互分离的编码和测试, 此后通过频繁的交接, 通过集成最终合成为可执行的程序.
X 模型的左边描述的是针对单独程序片段所进行的相互分离的编码和测试, 此后将进行频繁的交接, 通过集成最终成为可执行的程序, 然后再对这些可执行程序进行测试. 己通过集成测试的成品可以进行封装并提交给用户, 也可以作为更大规模和范围内集成的一部分. 多根并行的曲线表示变更可以在各个部分发生. 由图中可见, X 模型还定位了探索性测试, 这是不进行事先计划的特殊类型的测试, 这一方式往往能帮助有经验的测试人员在测试计划之外发现更多的软件错误. 但这样可能对测试造成人力, 物力和财力的浪费, 对测试员的熟练程度要求比较高.
H 模型
H 模型中, 软件测试过程活动完全独立, 贯穿于整个产品的周期, 与其他流程并发地进行, 某个测试点准备就绪时, 就可以从测试准备阶段进行到测试执行阶段. 软件测试可以尽早的进行, 并且可以根据被测物的不同而分层次进行.
这个示意图演示了在整个生产周期中某个层次上的一次测试 "微循环". 图中标注的其它流程可以是任意的开发流程, 例如设计流程或者编码流程. 也就是说, 只要测试条件成熟了, 测试准备活动完成了, 测试执行活动就可以进行了.
H 模型揭示了一个原理: 软件测试是一个独立的流程, 贯穿产品整个生命周期, 与其他流程并发地进行. H 模型指出软件测试要尽早准备, 尽早执行. 不同的测试活动可以是按照某个次序先后进行的, 但也可能是反复的, 只要某个测试达到准备就绪点, 测试执行活动就可以开展.
总节
1. 软件测试过程模型 - V 模型
是软件开发瀑布模型的变种, 主要反映测试活动与分析和设计的关系;
局限性: 把测试作为编码之后的最后一个活动, 需求分析等前期产生的错误直到后期的验收测试才能发现.
2. 软件测试过程模型 - W 模型
在 V 模型的基础上, 增加开发阶段的同步测试, 形成 W 模型; 测试与开发同步进行, 有利用尽早的发现问题;
局限性: 仍把开发活动看成是从需求开始到编码结束的串行活动, 只有上一阶段完成后, 才可以开始下一阶段的活动, 不能支持迭代, 自发性以及变更调整.
3. 软件测试过程模型 - H 模型
在 H 模型中, 软件测试过程活动完全独立, 贯穿于整个产品的周期, 与其他流程并发地进行, 某个测试点准备就绪时, 就可以从测试准备阶段进行到测试执行阶段; 软件测试可以进行尽早的进行; 软件测试可以根据被测物的不同而分层次进行
在实际工作中应灵活地运用各种模型的优点,
V 模型: 强调了在整个软件项目开发中需要经历的若干个测试级别, 并与每一个开发级别对应; 忽略了测试的对象不应该仅仅包括程序, 没有明确指出对需求, 设计的测试;
W 模型: 补充了 V 模型中忽略的内容, 强调了测试计划等工作的先行和对系统需求和系统设计的测试; 与 V 模型相同, 没有对软件测试的流程进行说明;
H 模型: 强调测试是独立的, 只要测试准备完成, 就可以执行测试.
转发, 涉及侵权, 请告知并删除.
测试模型
来源: http://www.bubuko.com/infodetail-3493120.html