软件测试理论-测试用例的编写
一:等价类划分法
作用:从穷举测试中解放出来,找到具有共同特征的自子集
分类:有效等价类:满足需求的测试用例/账号密码正常
无效等价类:不满足需求的测试用例/账号密码正确
划分依据:规则(需求本省)
长度/如账号密码,是否满足需求(满足就是有效,不满足就是无效)
类型/如账号密码时字母数字组合还是纯数字
是否重复
是否为空
编写步骤:需求分析-划分等价类-编写测试用例-用例评审
二:边界值
作用:边界值是对等价类的补充/研究统计表明,程序最容易出错的地方就是在边界附近
概念:基于边界值【有效等价类和无效等价类的分界点】设计测试用例的一种黑盒方法
划分依据:上点:边界之上的点(有效范围最后的点)
内点:边界之类的点(有效范围内任意一点)
离点:不在边界有效范围内,但是离有效范围最近的左右两点
编写步骤:+ 上点:必选(不考虑区间开闭)
+ 内点:必选(建议选择中间范围)
+ 离点:开内闭外(考虑开闭区间,开区间选择内部离点,闭区间选择外部离点)
三:判定表
概念:存在多个输入条件,多个输出结果,输入与输出之间有组合关系输入与输出之间有依赖或制约关系
判定表的组成
条件桩:所有输出的条件/如手机拨号测试中的欠费状态,关机状态
动作桩:所有可能输出的结果/如手机拨号测试中,允许被呼叫,不允许被呼叫/可以称为预期结果
条件项:单个条件取值范围,一般都是有效等价类和无效等价类
动作项:可以称为实际结果
代表字符:字符:
真/有效等价类/Y
假无效等价类/N
数字:
真/有效等价类/1
假无效等价类/0
设计步骤:
明确条件桩(找出所有的输入条件/电话欠费,关机,故障等)
明确动作桩(找出所有的预期结果/打不通,打得通之类)
对条件桩进行组合
明确每个组合对应的动作桩(基于每种条件的组合情况,确定本组和下的输出结果)
设计测试用例,每行数据对应一条测试用例
主要使用场景:多条件组合情况下使用(是否关机是一种条件,是否欠费又是一种条件,手机是否故障等,这种多条件足额情况下)
四:因果图
概念:使用图解的方法表示输入与输出之间的各种组合关系,写出判定表,进而设计测试用例的一种黑盒测试方法
适用范围:适用于分析程序的各种组合情况,以及输入和输出之间的依赖关系
核心要素:
恒等(-):条件成立,结果成立
非:(~/NOT):条件成立结果就不成立。条件不成立,结果就成立
或:(V/OR):只要有一个条件成立,结果就成立,当所有条件不成立时结果就不成立
与/且:(^/AND):多个条件必须同时成立,结果成立,只要有一个条件不成立时结果就不成立
判定表与一因果图的选择
当输入的条件比较少(2.3.4),推荐使用判定表设计测试用例方法
当输入条件比较多(>4个条件以上),推荐使用因果图转判定表
五:正交法
概念:用最小的测试用例获得最大的测试覆盖率
字符:
K:代表因素(输入的参数)
M:代表水平(输入参数的取值)
N:代表测试用例数
读法:k因素m水平
设计测试用例步骤
需求分析
确定因素与水平
确定采用正交表
将正交表中的字母用文字代替
设计测试用例(一行就是一个测试用例)
eg:
列号 | 字体 | 字符样式 | 颜色 | 字号 |
---|---|---|---|---|
试验号 | ||||
1 | 仿宋 | 粗体 | 红色 | 20号 |
2 | 仿宋 | 斜体 | 绿色 | 30号 |
3 | 仿宋 | 下划线 | 蓝色 | 40号 |
4 | 楷体 | 粗体 | 绿色 | 40号 |
5 | 楷体 | 斜体 | 蓝色 | 20号 |
6 | 楷体 | 下划线 | 红色 | 30号 |
7 | 华文彩云 | 粗体 | 蓝色 | 30号 |
8 | 华文彩云 | 斜体 | 红色 | 40号 |
9 | 华文彩云 | 下划线 | 绿色 | 20号 |
在使用正交表时有个小工具可以辅助我们
allpairs
使用方法:1,需求分析
2,确定因素与水平
3,将确定的因素与水平复制到txt文件中
4,在allpairs目录打开cmd控制台,运行命令:allpairs.exe test.txt > result.txt
5,运行完毕后会生成新的文件,更具生成的新文件去编写测试用例
六:场景法:
概念:场景法就是模拟用户操作软件的时场景,主要用于测试多个功能之间的组合使用情况
使用场景法的测试阶段:集成测试-系统测试-验收测试
设计测试用例步骤
需求分析-绘制流程图-设计测试用例(一条流程就是一个测试用例)
场景法中绘制场景图时用到的符号
开始或结束:椭圆
放向/路径:箭头
处理/操作
判断:菱形
输出或输入:平行四边形
绘制场景流程图时可以使用微软的visio,其他也可以 使用毕竟只是设计测试用例
七:错误推论法
这个方法适用于3年工作经验以上的人员,其他就不要瞎扯淡了
总结设计测试用例的使用场景
具有输入与输出,但输入与输出之间没有制约关系>等价类标签:输出,场景,等价,测试用例,条件,设计,方法,输入 From: https://www.cnblogs.com/wh0915/p/16976829.html
输入具有边界,如长度,类型等>边界值
多输入,多输出,输入与输出之间有组合关系/输入与输出之间有依赖关系/制约关系>判定表,因果图
使用最少的测试用例获得最大的测试覆盖率>正交表
多个功能的组合关系>场景法
有经验后可以使用错误推论法