一、等价类划分法
概念:通过科学方法找到具有共同特性的测试输入的子集,能够从穷举测试中解放(大大减少了测试用例的数量,从而提高测试效率
分类:
- 有效等价类:满足需求
- 无效等价类:不满足需求
设计测试用例步骤:
①需求分析
②划分等价类
- 有效
- 无效
- 规则(需求)
- 长度
- 类型
- 是否为空(必填项)
- 是否重复
③设计测试用例
案例:输入QQ号
二、边界值分析法
概念:等价类划分法的一种补充手段,对输入或输出的边界值【有效等价类和无效等价类的界限】进行测试的一种黑盒测试方法
上点(左右边界两个点)
内点(边界内的点)
离点(离左右边界最近的左右两个点)
设计测试用例步骤
- 需求分析
- 划分等价类
- 确定边界
- 设计测试用例
- 上点
- 内点
- 离点
典型应用场景
- 存在边界> >= < <= 边界值优化:7点变5点,简化测试用例
三、判定表分析法
概念:存在多个输入条件、多个输出结果,输入和输入之间有组合关系,输出和输出之间有组合关系
判定表组成:
- 条件桩:所有输入条件,如欠费状态、关机状态
- 动作桩:所有的可能的输出结果,如允许主被叫、不允许主被叫
- 条件项:单个条件的取值范围,一般都是有效等价类和无效等价类
- 表示方式
- 字符:
- 真/有效等价类/Y
- 假/无效等价类/N
- 数字:
- 真/有效等价类/1
- 假/无效等价类/0
- 字符:
- 表示方式
- 动作项:基于每一种条件的组合,得到确认的结果,如打不通等
设计测试用例的步骤
- 明确条件桩(找到所有的输入条件)
- 明确动作桩(找到所有的输出结果)
- 对条件桩进行全组合
- 明确每个组合对应的动作桩(基于每一种条件的组合情况,确定本组合下的输出结果)
- 设计测试用例,每列数据对应一条测试用例
使用场景:多条件组合情况
四、因果图
概念:用图解的方法表示输入的各组合关系,写出判定表,进而设计测试用例的一种【黑盒测试】方法
适用范围:适用于分析程序输入条件的各种组合情况,以及输入和输出之间的依赖关系
核心
- 因:条件
- 果:结果
基本符号
- 恒等(-):条件成立,结果成立
- 非(~)NOT:条件成立,结果不成立;条件不成立,结果成立
- 或(V)OR:只要有一个条件成立,结果就成立;所有条件都不成立时,结果才不成立
- 与/且(^)AND:多个条件必须同时成立,结果成立;只要有一个不成立,结果就不成立
设计测试用例的步骤
- 需求分析
- 画出因果图
- 将因果图转为判定表
- 生成测试用例
五、正交法
用最小的测试用例获得最大的测试覆盖率
正交表:一种特制的表,一般的正交表标记位:Ln(mk)
说明:
- k代表因素(输入参数)
- m叫水平(输入参数的取值)
- n代表测试用例数
- 读法:k因素m水平
基于正交表设计测试用例
步骤
- 需求分析
- 确定因素与水平(因素:控件名称;水平:每个控件对应的取值)
- 确定要采用的正交表
- 将正交表中的字母用文字代替
- 设计测试用例(一行就是一条测试用例)
基于allpairs设计测试用例
步骤
- 需求分析
- 确定因素与水平(因素:控件名称;水平:每个控件对应的取值)
- 将确定的因素与水平复制到txt文件中
- 打开DOS窗口,进入allpairs目录,运行命令:allpairs.exe test.txt>result.txt
- 根据生成的新文件编计测试用例(一行就是一条测试用例)
六、场景法
概念:通过运用场景来对系统的功能点或业务流程的描述,从而提高测试效果的一种方法。场景法一般包含基本流和备用流,从一个流程开始,通过描述经过的路径来确定的过程,经过遍历所有的基本流和备用流来完成整个场景。场景主要包括4种主要的类型:正常的用例场景,备选的用例场景,异常的用例场景,假定推测的场景。
使用测试阶段:
- 集成测试
- 系统测试
- 验收测试
设计测试用例的步骤:
- 需求分析
- 绘制流程图
- 设计测试用例(一条流程图就是一条测试用例)
流程图常用符号:
开始或结束:椭圆
方向或路径:箭头
七、错误推测法
概念:利用经验或智慧发现程序中可能犯错的地方
使用场景:
- 重要功能
- 使用同类型产品
- 任务急、时间紧、资源少
八、总结
具有输入功能,但输入之间没有组合关系==》【等价类】
输入有边界,如长度、类型==》【边界值】
多输入、多输出、输入与输入之间存在组合关系,输入与输入之间存在依赖或制约关系==》【判定表、因果图】
用最少的测试用例获得最大的测试覆盖率==》【正交法】
多个功能的组合测试==》【场景法、流程图】
最后推荐使用【错误推测法】来进一步补充测试用例