测试用例设计方法
1、测试方法与测试用例方法概念区分:
测试方法 | 测试用例方法 |
---|
黑盒测试 | 黑盒测试用例设计方法 | 白盒测试 | 白盒测试用例设计方法 | 灰盒测试 | |
2、测试用例设计方法默认指黑盒测试用例设计方法,除非指名是白盒 3、(了解)白盒测试用例设计方法: 逻辑覆盖法(语句覆盖、条件覆盖、判定覆盖、条件判定覆盖、条件组合覆盖) 基本路径法
一、等价类划分
使用场景:
输入域 数据范围很大,无法对每个数据进行穷尽测试,考虑将大量数据划分为若干个有效等价类与无效等价类,从每个类中选取典型代表数据进行测试,该代表数据的测试结果等价于该类中所有数据测试的结果
相关概念(2个):
有效等价类:正向测试,符合需求的操作,预期成功的 无效等价类:反向测试,不符合需求的操作,预期失败的
使用步骤(3步):
(1)需求分析,得到有效等价类与无效等价类 (2)为每个等价类设置编号(防止遗漏) (3)导出测试用例:一条用列尽可能多覆盖有效等价类,一条用例覆盖一个无效等价类 关于类型 等价类划分小结: 1、A 或 B 或 C (1)有效等价类:A ;B ; C ; ABC组合(当这个有问题时,才测两两的组合) (2)无效等价类:含除ABC外其他字符 2、A 与 B 与 C (1)有效等价类:ABC组合 (2)无效等价类:不含A;不含B;不含C; 含其他字符
等价类划分原则(4点):
(1)当规定了取值范围(或值的个数),划分为1个有效等价类,2个无效等价类 (2)当输入是一个集合时,划分为1个有效1个无效 (3)当输入是一个布尔类型时,划分为1个有效和1个无效 (4)当有效等价类中不同范围有不同的处理方案时,需要将一个有效等价类划分为若干个有效等价类(细分)
二、边界值分析
使用场景:
当输入存在取值范围(如:年龄18-60)或规定了值的个数(如:11位手机号),存在边界时,考虑使用边界值分析法补充测试用例。经过实践证明,边界点最容易出现问题,故测试人员必须要有边界意识。
需补充的边界点:
上点:边界点 离点:与上点 最近且与上点不在一个范围的点(闭区间 离点在外,开区间 离点在内) (补充)内点:最小范围(综合上点、与离点)加一,最大范围(综合上点、与离点)减一,这个范围区间内的任意一点
四、判定表
使用场景:
当多个输入条件存在逻辑关系,需要组合测试时,考虑使用判定表进行分析
相关概念(4个):
(1)条件桩:输入条件,如工资薪资 (2)条件项:输入条件的取值,如年薪制 (3)动作桩:输出项 (4)动作项:输出项的取值
使用步骤:
(1)需求分析,得到条件桩、条件项和动作桩 (2)根据每个条件桩与条件项数量的乘积确定组合的数量 (3)完成每种组合,得到判定表,根据具体需求进行必要的合并删减 (4)导出测试用例,每列即为一条测试用例
五、正交试验
1、使用场景
当多个输入条件存在逻辑关系,需要进行组合测试,且组合数量巨大时,考虑使用正交实验方法选取最优组合进行测试
2、相关概念(2个)
因子数:输入条件的数量(有几个条件) 水平数::输入条件取值的数量(每个条件的值的数量)
3、使用步骤(4步):
(1)需求分析,确定因子数与水平数(最大值原则与少数服从多数原则) (2)选取合适的正交表
原则:正交表列数≥因子数;选取最接近的水平数;若有多个正交表符合,则选取行数最小
(3)选取到的正交表复制到Excel文件中,进行修改完善
删除多余的列
将 列编号 替换成有意义的 条件名
针对每一列,删除多余的取值编号,用已有编号进行均衡填补
将每列中的取值编号替换为有意义的取值名称
(4)导出测试用例,每行即为一个测试用例
六、流程法(场景法)
1、使用场景
针对业务操作复杂的情况(多步骤),考虑使用流程法分析各种场景,如安装软件、网上商城购物,OA上请假等。
2、相关概念
(1)基本流:正常流的一种,正向测试,符合需求的一次性操作,预期成功的 (2)备选流:正常流的一种,正向测试,符合需求的反复操作,预期成功的 (3)异常流:反向测试,不符合需求的操作,预期是失败的
3、使用步骤(3步)
(1)需求分析,画出流程图 (2)覆盖流程图中每一条路径,列出基本流,备选流、异常流(可用经验法、错误猜测法补充场景) (3)导出测试用例,每条用例覆盖一个场景
七、因果图(了解)
1、原因与结果之间的关系
(1)恒等: 如果天晴,则户外活动,天晴与户外活动属于恒等关系 (2)非:如果下雨,则不户外活动, 下雨与户外活动属于非关系 (3)或:如果下雨,或下雪,或下冰雹,则室内活动, 下雨、下雪、下冰雹与室内活动属于或关系 (4)与:如果有时间且有钱,则去旅游 有时间 、 有钱与旅游属于与关系
2、条件项之间的约束(输入状态之间的约束)
(1)E约束:a和b之间至多有一个为1,即a和b不能同时为1 (2)I约束:a、b和c中至少有一个必须是1,即 a、b 和c不能同时为0。 (3)O约束:a和b必须有一个,且仅有1个为1 (4)R约束:a是1时,b必须是1,即不可能a是1时b是0。 (5)M约束(强制) :若结果a是1,则结果b强制为0。
3、使用步骤
(1)需求分析,得到原因和结果,以及关系(原因与结果之间的关系)和约束(输入状态之间的约束) (2)画出因果图(用符号表示原因、结果、关系、约束) (3)转换成判定表(遵循约束) (4)转换成测试用例
八、经验法、错误猜测法
根据经验,主要增强以下测试点: (1)前中后加空格问题 (2)前中后加小数点问题(数值文本框需要考虑) (3)全半角问题 (4)千位分隔符(数值文本框需要考虑) (5)前中后加运算符号 (6)数字前加正负符号 (7)科学计数法(如4.5E1,35e1) (8)根据业务具体加强分析
测试用例设计方法 使用小结:
(1)首先使用流程法,分析各种正常及异常的场景,得到测试点 (2)针对被测界面中的每个元素进行分析:
- a、若元素之间存在逻辑关系,需要组合测试时,如多条件查询,考虑使用判定表,若组合数量巨大时,考虑正交试验
- b、若元素之间不存在逻辑关系(如增加数据),不需要组合测试时,考虑使用等价类、边界值进行分析
(3)使用经验法、错误猜测法进行增强测试点分析
附:
思维导图
|