keep thinking,keep sharing
【读书笔记】基于需求的几种测试分析方法
上一篇 /
下一篇 2014-05-26 15:57:25
/ 个人分类:读书笔记
1. 凭胆量的测试(靠运气的测试)
大部分依靠于是谁在做这个测试
-他们在测试方面有多少经验
-他们对于特定的应用系统有多少经验
-他们对于应用系统所使用的技术拥有多少经验
-他们今天的心情怎么样
即使所有的测试运行通过了,你所知道的也只是那些测试运行通过了,而不是系统能够成功运行。
2. 设计测试案例所需要的信息
-识别所有的变量
-在内部处理还是有输入和输出的
-识别所有变量可能的状态
-知道哪个变量是必须的哪个变量是可选的
-识别所有的前提条件(基于数据的物理结构,基于前一个功能模块的后置条件)
-了解优先级关系
-了解并发性
-知道哪些变量是可以观察到的
-识别明确的信息,并清晰的获取它
-识别转换
-定义预期结果
4. 测试案例设计的挑战
-测试是比较预期结果和观察到的结果(意味着有清晰的说明书)
-潜在的测试数量超过了宇宙中分子的数量
-你能为正确的原因找到正确的理由么(不能)
a.两个或更多的缺陷可能会导致彼此低效(负负得正效应)
b.运行正确的功能可能会掩盖运行错误的功能。
5.带边界值分析的等价类测试
-由范围定义的域
-选择中间的值
-选择最高的有效值
-选择最低的有效值
-选择一些比最高有效值更高的值
-选择一些比最低有效值更低的值
以下是三种基于需求的测试分析方法
pair wise testing
-步骤
1.定义变量
2.定义每个变量的状态
3.定义变量和状态之间的约束
4.将一个变量的所有状态和另一个变量的所有状态进行结对
5.合并可行的组合对到测试案例中,并且保证符合约束条件。
-定义变量和状态
-弱化识别的别名(???)
-优先级别和并发不处理
-前提条件通常不处理
-预期结果不定义
-不着重于澄清需求说明书
-不需要证实逻辑一致性
-经常产生不合逻辑的测试
-减少测试数量
Path Coverage
-需求规格的内容必须都包括在工具中的需求组件中
-他们必须都是机器可读和机器易读的。
-我们的经验是一个完整的需求是通过多个文档和多种格式去说明的。
-大量的需求都不是机器易读的,比如word,excel,visio
-优先级因素
-不存在并发因素
-通常不包括预期结果
-不存在前提条件的因素
-有些可以识别内部功能逻辑的不一致性
-经常会产生不合逻辑的测试
-对于清晰化需求没有什么帮助
-减少测试数量
.Bender RBT Process
-质量过滤器
1.确认需求(what)是对应目标的(why)
2.把场景应用到需求和用例上去
3.进行初始的是否有模糊点的评审
4.进行领域专家的复审
5.创建因果图
6.BenderRBT检查逻辑合理性
7.和需求编写者确认测试案例
8.和业务及领域专家确认测试案例
9.与开发确认测试案例
10.通过在设计中穿行测试案例来验证设计
11.通过在代码中穿行测试案例来验证代码
12.通过在代码中执行测试案例来验证代码
-模糊点检查的checklist
1.还有哪些是悬而未决的
2.参考信息的模糊性
3.行动的范围
4.遗漏之处
-没有结果的条件
-缺少结果
-没有条件的结果
-完成遗漏点
-缺少条件
5.模糊的逻辑运算
- or,and,nor,nand
-隐含的关联
-复合运算
6.否定
-否定的范围
-多余的否定
-双重否定
7.模糊的生命
-名词,动词,形容词
-变量,多余的命名
8.随机组织
-混合的条件和结果
-随机的假设序列
9.固有的假设
-功能的知识/环境的知识
10.模糊的优先级/模糊的关联关系
11.隐含的假设
12.等等
13.即和例如的区别
14.时间的模糊
15.边界的模糊
-Cause-Effect Graphing
1.独立于需求的格式
2.能够支持敏捷项目
3.定义变量,状态,别名
4.明确优先级和并列关系
5.假设条件因素
6.定义预期结果
7.明确潜在的结果
-因果图的挑战:
设计一组测试案例,分解以下内容:
-变量之间的关系
-数据属性之间的约束
-需要测试的功能的变化
-结点的可观测性
收藏
举报
TAG: