232等价类划分法 以三角形问题为例,输入条件是 三个数,分别作为三角形的三条边 都是整数 取值范围在1~100之间 认真分析上述的输入条件,可以得出相关的等价类表 (包括有效等价类和无效等价类),如表22所示。 第二章软件测试方法
以三角形问题为例,输入条件是: 三个数,分别作为三角形的三条边 都是整数 取值范围在1~100之间 认真分析上述的输入条件,可以得出相关的等价类表 (包括有效等价类和无效等价类),如表2-2所示。 2.3.2 等价类划分法 第二章 软件测试方法
232等价类划分法 输入条件 等价类 编号 有效等价类 等价类编号 无效等价类 只有一条边 三个数 三个数 只有两条边 多于三条边 7 边为非整数 整数 整数 两边为非整数 三边为非整数 10 边为0 两边为0 12 三边为0 13 边小于 取值范围在 3 1<b<100 14 l~100 两边小于0 l<c<100 三边小于0 6 边大于10 7 两边大于100 边大于 表2-2三角形问题的等价类 第二章软件测试方法
2.3.2 等价类划分法 第二章 软件测试方法 输入条件 等价类 编号 有效等价类 等价类编号 无效等价类 三个数 1 三个数 4 只有一条边 5 只有两条边 6 多于三条边 整数 2 整数 7 一边为非整数 8 两边为非整数 9 三边为非整数 取值范围在 1~100 3 1≤a≤100 1≤b≤100 1≤c≤100 10 一边为0 11 两边为0 12 三边为0 13 一边小于0 14 两边小于0 15 三边小于0 16 一边大于100 17 两边大于100 18 三边大于100 表2-2 三角形问题的等价类
232等价类划分法 2常见等价类划分形式 针对是否对无效数据进行测试,可以将等价类测试分为标准等价类测试、健壮等 价类测试以及对等区间的划分 (1)标准等价类测试 标准等价类测试不考虑无效数据值,测试用例使用每个等价类中的一个值。通常 ,标准等价类测试用例的数量和最大等价类中元素的数目相等 以三角形问题为例,要求输入三个整数a、b、c,分别作为三角形的三条边,取值 范围在1~100之间,判断由三条边构成的三角形类型为等边三角形、等腰三角形、 般三角形(包括直角三角形)以及非三角形。在多数情况下,是从输入域划分等 价类,但对于三角形问题,从输出域来定义等价类是最简单的划分方法。 因此,利用这些信息可以确定下列值域等价类: R1={〈a,b,c):边为a,b,c的等边三角形} R2={(a,b,c):边为a,b,c的等腰三角形} R3={(a,b,c):边为a,b,c的一般三角形} R4={(a,b,c):边为a,b,c不构成三角 4个标准等价类测试用例如表2-3所示。形 第二章软件测试方法
2.3.2 等价类划分法 第二章 软件测试方法 2. 常见等价类划分形式 针对是否对无效数据进行测试,可以将等价类测试分为标准等价类测试、健壮等 价类测试以及对等区间的划分。 (1) 标准等价类测试 标准等价类测试不考虑无效数据值,测试用例使用每个等价类中的一个值。通常 ,标准等价类测试用例的数量和最大等价类中元素的数目相等。 以三角形问题为例,要求输入三个整数a、b、c,分别作为三角形的三条边,取值 范围在1~100之间,判断由三条边构成的三角形类型为等边三角形、等腰三角形、 一般三角形(包括直角三角形)以及非三角形。在多数情况下,是从输入域划分等 价类,但对于三角形问题,从输出域来定义等价类是最简单的划分方法。 因此,利用这些信息可以确定下列值域等价类: R1={〈a,b,c〉:边为a,b,c 的等边三角形} R2={〈a,b,c〉:边为a,b,c 的等腰三角形} R3={〈a,b,c〉:边为a,b,c 的一般三角形} R4={〈a,b,c〉:边为a,b,c 不构成三角形} 4个标准等价类测试用例如表2-3所示
232等价类划分法 测试用例 a b 预期输出 Test Case 1 10 等边三角形 Test Case 2 等腰三角形 Test case 3 4 般三角形 Test Case 4 不构成三角形 表2-3三角形问题的标准等价类测试用例 第二章软件测试方法
2.3.2 等价类划分法 第二章 软件测试方法 测试用例 a b c 预期输出 Test Case 1 10 10 10 等边三角形 Test Case 2 10 10 5 等腰三角形 Test Case 3 3 4 5 一般三角形 Test Case 4 1 1 5 不构成三角形 表2-3 三角形问题的标准等价类测试用例
232等价类划分法 (2)健壮等价类测试 健壮等价类测试主要的出发点是考虑了无效等价类 对有效输入,测试用例从每个有效等价类中取一个值;对无效输入, 个测试用例有一个无效值,其他值均取有效值。 健壮等价类测试存在两个问题 需要花费精力定义无效测试用例的期望输出 对强类型的语言没有必要考虑无效的输入。 第二章软件测试方法
2.3.2 等价类划分法 第二章 软件测试方法 (2) 健壮等价类测试 健壮等价类测试主要的出发点是考虑了无效等价类。 对有效输入,测试用例从每个有效等价类中取一个值; 对无效输入, 一个测试用例有一个无效值,其他值均取有效值。 健壮等价类测试存在两个问题: 需要花费精力定义无效测试用例的期望输出; 对强类型的语言没有必要考虑无效的输入