结合实际工作应用场景稍微总结下工作中常见的用例设计方法。
工作中常用到的用例设计方法大致有如下几种:
1) 等价类划分法
2) 边界值法
3) 正交法
4) 判定表法(因果图法)
5) 错误推测法
等价类划分法
· 适用场景
应用中存在输入的地方。在进行输入测试时,可以输入的数据是无限的,测试中不可能对输入实现穷举测试,这时候可以使用等价类划分法设计测试用例。
· 等价类划分法定义
将无法穷举的输入数据按类别划分成子集,然后从每一个子集中挑选部分代表性数据进行测试。
·等价类一般操作步骤
1.先分析输入需求
2.列出所有满足需求的条件,即有效等价类
3.列出所有不满足需求的条件(需求的反面),即无效等价类。
4.写出测试用例
注意:一般情况下不满足需求的范围较大,可以进一步细分,细分的程度可以按实际需要进行。
· 案例说明
用户名为6-16位字母,数字组合(同时包含两种类型):
1.分析输入需求
用户名合法输入为6-16位字母,数字组合
2.列出所有满足需求的条件
a)长度:6—16位
b)类型:字母,数字组合
3.列出所有不满足需求的条件,进一步细化分类
a)长度:非6—16位
i. <6位
ii. >16位
b)类型:非字母,数字组合
i. 纯字母
ii. 纯数字
iii. 包含特殊字符
iv. 包含空格(考虑输入框内容处理,特殊考虑)
v. 包含中文
4. 编写测试用例
· 等价类设计用例注意事项
使用等价类法设计用例,一条用例中最好只包含一个无效等价类。
边界值法
· 适用场景
在测试过程中遇到存在输入或者输出边界情况,需要考虑边界值法。
· 边界值法定义
边界值分析法就是对输入或输出的边界值进行测试的一种黑盒测试方法。
· 等价类一般操作步骤
1. 对于输入
a)在测试时,先确定边界
b)然后选取稍小于边界,正好等于边界和稍大于边界的值进行测试。
2. 对于输出
在测试时,关注边界的显示内容是否正确。
· 案例说明
(输入测试)用户名为6-16位字母,数字组合:
1.确定需求中边界为6和16
2.测试边界值需要考虑输入长度为5,6, 7和15,16,17的情况。
(输出测试)输出只需要查看显示内容是否正确即可。考虑如下:
1.显示列表的第一行和最后一行;
2.显示数据的第一个和最后一个;
注意:在进行输入测试时,如果需求中存在边界(范围,长度),那么等价类和边界值通常配合使用。
正交排列法
· 适用场景
测试过程中遇到多个参数进行组合测试的情况,并且组合数量特别大时,可以通过正交排列法减少用例,测试最少的组合情况,实现最大测试覆盖率。
· 正交排列法定义
正交排列法是一种研究多个参数并且每个参数有多种取值的用例设计方法。
· 正交排列法操作步骤
正交排列法是通过查表实现的,但是查表比较麻烦,推荐使用工具直接生成用例。工具生成方法如下:
1.使用工具:allpairs (下载地址:https://sourceforge.net/projects/allpairs/)
2.使用方法:
1)分析需求后在Excel中制作一个取值表,下面以商品筛选为例:
2)把取值表中内容复制到txt文本中(不要修改格式):
3)把txt文本,复制到allpairs工具的解压目录下(工具直接解压即可,无需安装):
4)DOS命令进入工具所在目录,输入命令:allpairs.exe yrf.txt > jieguo.txt
5)在jieguo.txt中查看生成的用例:
说明:用例中带~选择,表示测试时此项选择内容不影响结果。
判定表法
· 适用场景
测试过程中遇到有多种条件,并且多个条件之间存在逻辑组合或者制约关系,且不同的条件组合会产生不同的对应结果时,可以使用判定表法设计测试用例。
· 定义
判定表是分析和表达多逻辑条件下执行不同操作的情况的工具。
· 判定表组成
判定表由四部分组成:
判定表及组成图示(示例:若欠费或者停机则不允许主被叫):
判定表操作步骤:
1.需求分析。
2.找出需求中的所有条件桩和动作桩。
3.根据需求列出所有的条件项。
4.基于条件项得出对应的动作项,得到判定表。
5.编写测试用例(每一项组合就是一个用例)。
说明:因果图法是产生判定表的中间分析过程,在工作中使用较少,此处不做介绍。
错误推测法
· 适用场景
1.项目紧任务急、时间不够,可以根据之前项目的经验,推测可能出错的地方重点测试;
2.所有正常测试结束后,可以使用错误推测法补充用例。
· 定义
错误推测法是指利用直觉和经验猜测出出错的可能类型,有针对性列举出程序中所有可能的错误和容易发生错误的情况,它是测试经验丰富的测试人员喜欢使用的一种测试用例设计方法。
· 操作步骤
1.列举出可能犯的错误或错误易发生的清单;
2.然后根据清单编写测试用例;
推荐阅读:
2018年新版Java学习路线图(内含大纲+视频+工具+书籍+面试)
2018年最新Python学习路线图(内含大纲+视频+工具)
2018版Go语言+区块链学习路线图(含大纲+视频+工具+资料)
2018新版前端与移动开发学习路线图(视频+工具+书籍+资源)

网友评论