测试用例设计
等价类划分法
- 有效等价类
- 满足需求的
- 无效等价类
- 不满足需求的
等价类划分方法操作步骤
- 明确需求
- 确定有效和无效等价类
- 编写测试用例
边界值划分法
边界范围
- 上点
- 处在边界上的点(正好等于)
- 离点
- 离上点最近的点
- 内点
- 范围内的点
开区间,闭区间
- [开始值,结束值] - 闭区间,包含开始值,包含结束值
- (开始值,结束值) - 开区间,不包含开始值,不包含结束值
[20,30] 大于等于20,小于等于30 闭区间 20,和30是上点 25内点 19,31是离点 离点是无效数据
(20,30)大于20,小于30 开区间 20,30是上点,25是内点,21,29是离点,这里的离点是有效数据
(20,30] 大于20,小于等于30 左开右闭区间
[20,30)大于等于20,小于30 左闭右开区间
- 对于闭区间,上点是有效数据,离点是无效数据
对于开区间,上点是无效数据,离点是有效数据
不管开和闭区间,内点都是有效数据
使用边界值法步骤
- 明确需求
- 明确有效和无效等价类
- 确定边界值
- 编写测试用例
判定表法
引入
- 案例:若用户欠费或者关机,则不允许主被叫
等价类划分法和边界值分析法都是着重考虑单个输入的输入条件,但是
没有考虑输入条件的各种组合、输入条件与输出条件之间的相互制约关系.
所以要使用判定表法才能解决上述案例编写测试用例的过程
- 判定表法表示的是有多个输入,和多个输出,而且输入和输入之间有相互的组合关系、输入和输出之间有相互的依赖关系
判定表的四个组成部分
- 判定表通常由四个部分组成
- 条件桩:列出了系统的所有输入,列出的输入次序无关紧要
- 动作桩:列出了系统可能采取的操作,这些操作的排序顺序没有约束
- 条件项:列出针对它左列输入的取值,在所有可能情况下的真假值
- 动作项:列出在输入项的各种取值情况下应该采取的动作
注:判定表中贯穿条件项和动作项的一列就是一条规则
使用判定表步骤
- 先明确需求
- 画判定表
- 先画条件桩
- 然后动作桩
- 罗列条件桩的不同组合
- 根据条件项完成动作项
- 编写测试用例
- 判定表中的一条规则对应一条测试用例
不能直接用判定表去执行测试
通过判定表编写测试用例,用测试用例去执行测试操作
测试用例有很重要的两个原则
- 能看懂
- 能执行
因果图法
待完善
正交法
适用范围
- 当可能得输入数据或者输入数据的组合量很大是,由于不可能位每个输入组合都创建测试用例,可以采用这种方法.
特点
均匀分散,齐整可比
正交表的概念
- 一种特制的表,一般的正交表标记为:$L_n(m^k)$
- n表示行数
- k表示列数
- m是列的取值个数
如:$L_9(3^4)$
有四个列
每个列3个取值
9位列的组合个数
叫4因素3水平
使用正交表步骤
-
明确需求
-
绘制正交表
- 先确定列数
- 确定正交表每列的取值个数
- 根据因素和水平可以确定行数
-
根据正交表编写测试用例
- 正交表的一行代表一条测试用例
场景法
定义
- 场景法是用流程图描述用户的使用场景,然后通过覆盖流程路径来设计测试用例
场景法的意义
- 用户角度:用户平时使用的不是单个功能,而是多个功能组合起来进行使用
- 测试人员角度:平时测试的都是单个功能点进行测试,容易忽略多个功能的组合测试
场景法设计测试用例步骤
- 明确需求
- 画出流程图
- 编写测试用例
-
用流程图描述用户的使用场景
-
用覆盖流程路径来设计测试用例
- 从流程图开始到结束,有几条路就是几个路径
- 一个路径对应一条测试用例
案例——使用ATM机取款
ATM机取款流程图
错误推测法
错误推测法是指利用直觉和经验猜测出出错的可能类型,有针对性列举出程序中所有可能的错误和容易发生错误的情况,它是测试经验丰富的测试人员喜欢使用的一种测试用例设计方法。
-
基本思想:
- 基本思想是列举出可能犯的错误或错误容易发生的清单,然后根据清单编写测试用例;
- 这种方法很大程度上是凭经验进行的,即凭人们对过去所作测试结果的分析,对所揭示缺陷的规律性作直觉的推测来发现缺陷。
-
使用场景
- 项目紧任务急、时间不够、这时就不要按部就班的测试了,根据之前项目的经验,找到之前出错过的类似模块进行重点测试
- 所有正常测试结束后,通过错误推断法再测试一些之前出过问题的模块