等价类
步骤:1.划分等价类;2.确定测试用例;
举例:输入三角形三边应为正整数,分别构成非三角形、一般三角形、等腰三角形和等边三角形。
需求分析:1.正整数;2.两边之和大于第三边;3.两边相等;4.三边相等。
边界值
上点:边界上的点,不管是开还是闭区间
离点:距离上点最近的点,闭区间离点在外,开区间离点在内
内点:边界内的任意一点,可以采用折中的方法确定内点
步骤:1.划分等价类(可选);2.分析样点;3.确定测试用例。
判定表
增强条件与结果之间的逻辑性,弥补等价类的不足,判定表无法直接生成测试用例,而且条件得到什么结果需要手工处理
步骤:1.标识输入和输出;2.构造判定表;3.逐列分析条件项组合,填入其动作项;4.简化判定表(可选);5.生成测试用例。
总结:其实就是条件组合,并去除无效的条件组合,最终生成测试用例
因果图
得到条件和条件、条件和结果的逻辑关系,可以通过与或非运算直接得到测试规则,然后合并,最后通过等价类、边界值抽取测试用例。
使用条件:输入条件比较多或约束关系也比较多,直接做判定表比较复杂(ps:输入条件比较少时,我们可以直接用判定表法)
步骤:1.标识输入和输出;2.画出因果图;3.将因果图转换为判定表;4.简化判定表(可选);5.生成测试用例。
条件与结果:恒等、非、或、与
条件与条件:异、唯一、要求、或
1.E约束(异):所有输入中至多一个输入条件发生。(<=1,也可以没有)
2.I约束(或):所有输入中至少一个输入条件发生。(>=1)
3.O约束(唯一);所有输入中有且只有一个输入条件发生。(=1)
4.R约束(要求):所有输入中只要有一个输入条件发生,则其它输入也会发生
流程分析
涉及流程的,都可以用流程分析,能将系统功能进行串联,但是流程没问题不表示功能没问题
流程分为正常流程和异常流程
步骤:1.画出业务流程图;2.定义状态节点和条件分支;3.确定测试路径(每个流程构成一个测试用例);4.选取测试数据,构造测试用例。
异常分析
断电、断网、硬件故障等。
步骤:1.针对系统罗列可能的故障;2.针对每种可能故障设计测试用例。
正交试验
1、正交试验使用方法
正交表(各因素水平都相等)
设计步骤:
正交试验四步走: (a)明确试验目的 (b)确定因素和水平 (c)选择合适正交表 (d)用例设计与编写
计算方法:
L:正交表代号(没有实际意义) n:正交表横行数(试验次数,即用例个数) m: 因素水平数 k:正交表纵列数(最多能安排的因数个数)
用例数 n=k x (m-1)+1
混合水平正交表
定义:
混合水平正交表就是各因素水平数不完全相等的正交表。如,表示有8行,5列(1+4),其中一列有4个水平,另外4列只有2个水平。
特性:
- 任一列,不同数字出现次数相同
- 任两列,同行两个数字组成的各种不同的水平搭配出现的次数相同,但不同的两列所组成的水平搭配种类及出现次数不完全相同
计算实例:
选择合适的正交表
当我们把因素和水平都找出来后,我们需要选择合适的正交表来完成试验。参考现有已经完成的正交表,我们需要选出与m^k形态 最接近的正交表 。
譬如,存在 m1 = 5, k1 = 5, m2 = 2, k2 = 1,根据计算公式:
n = 5x(5-1) + 1x(2-1) + 1= 22
我们发现没有 n = 22 的正交表,那如何选择合适自身的正交表呢? (a)找出满足 n > 22 的正交表 (b)m > max(m1, m2) 即 m > max(5, 2) 且 k >= (k1+k2) = 5+1= 6 (c)选择 n 最小/最简单的正 交表:
注:我们发现实际上 2^11 4^1 6^1 也符合,但是这个组合可能稍微复杂,我们可以选择更简单的正交表。