软件测试模式

来源:互联网 发布:天正看图软件 编辑:程序博客网 时间:2024/06/05 01:03

按照测试模式来分类:
瀑布模型、敏捷测试、基于脚本的测试、基于风险的测试、探索测试等。

传统的瀑布模型:
这里写图片描述
优点:
强调需求、设计的作用;前一阶段完成后,只需关注后续阶段;
为项目提供了按阶段划分的检查点,里程碑清晰;文档规范
缺点:
难以适用需求的频繁变化;项目周期后段才能看到成果;
强制的里程碑、完成时间点;文档工作量大。

V模型:
这里写图片描述

W模型:
这里写图片描述

X模型:
这里写图片描述

H模型:
这里写图片描述

敏捷测试:
Agile Testing–遵循敏捷宣言的一种测试实践。

敏捷宣言:
个体与交互 重于 过程和工具
可用的软件 重于 完备的文档
客户协作 重于 合同谈判
响应变化 重于 遵循计划
在每对比较中,后者并非全无价值,但我们更看重前者。

特点:
强调从客户角度进行测试;重点关注迭代测试新功能,不再强调测试阶段;尽早测试,不间断测试,具备条件即测试;强调持续反馈;预防缺陷重于发现缺陷。

敏捷测试 vs 传统测试:
这里写图片描述

基于脚本的测试-SBT:
Script-based Testing
Scripted Testing(ST)
Exploratory Testing(ET)

探索式测试(ET):完全抛开测试脚本的测试。它是一种测试风格、思维而不是一种测试技。
ET和ST使用:
这里写图片描述

ST Vs ET:
这里写图片描述

探索式测试的优点:
1.更能激发测试人员的创造性和工作乐趣
2.增加了发现新的或较深入Bug的可能性
3.在较短时间内找到更多Bug以及对SUT做一个快速的评估
4.有利于更加有效的实施自动化
5.更加适用于敏捷项目
6.减少了在简单、繁复上用例的无谓编写时间

探索式测试的缺点:
1.测试管理上有局限性,较难协调和控制
2.对于Bug的重复利用和重复上作用有限
3.对测试人员的测试技能和业务知识深度依赖较大
4.只有在SUT已完全可用的前提下才更有作用
5.ET的生产率很难定义
6.ET本身较难进行自动化

局部探索式测试:输入、状态、代码路径、用户数据、执行环境。
全局探索式测试:漫游测试法—–商业区、旅馆区、历史区、旅游区、娱乐区、破旧区。

执行探索式测试:
Know You Mession—>Learning Session—>Coverage Session—>Deep Session—>Close Session

基于风险的测试-RBT:
Risk-based Testing
一种基于对软件失效的风险评估并以此指导测试计划、设计、执行、结果评价的软件测试类型。

哪些是风险:质量风险、管理风险、风险级别=风险可能性*风险严重度。

识别风险:
可能性:复杂性、时间压力、高变更率、技能水平、地理分散度。
严重程度:使用频率、失效可视性、商业损失、组织负面影响和损害、社会损失和法律责任。
风险要素分=Sum(单项权重*得分)

RBT的优点:
这里写图片描述

基于模型的测试-MBT:
Model-based testing is software testing in which test cases are derived in whole or in part from a model that describe some(usually fnctional) aspects of the system under test(SUT).
http://blogs.msdn.microsoft.com/sechina/2009/11/18/123
主要的MBT工具:
Spec Explore(Microsoft)
GraphWalker(OpenSource) http://graphwalker.github.io/
Tcases(OpenSource) http://github.com/Cornutum/tcases
Modeljunit(OpenSource) http://www.cs.waikato.ac.nz/~marku/mbt/modeljunit

1 0
原创粉丝点击