实验2 黑盒测试方法:等价类划分法+边界值分析方法
实验2 黑盒测试方法:等价类划分法+边界值分析方法
一、实验目的
- 掌握等价类、有效等价类、无效等价类、边界值等概念。
- 掌握边界值分析法、等价类划分法的测试用例设计方法。
- 能够将这两种方法结合起来,灵活运用
二、实验任务
以下三个任务、至少完成一个
1、对三角问题综合运用边界值分析方法、等价类划分方法设计测试用例。
三角形问题:void Triangle (int a, int b, int c)函数规定输入三个整数a、b、c分别作为三边的边长构成三角形。通过程序判定所构成的三角形的类型(等边三角形、等腰三角形、一般三角形、构不成三角形),并在屏幕上输出。1<=a,b,c<=200。
实验步骤:
| 输入变量 | 输出类型 | 有效等价类 | 无效等价类 | |
| a,b,c | 不确定 |
| 一个边为非正整数 | (10)a为非正整数 |
| (11)b为非正整数 | ||||
| (12)c为非正整数 | ||||
| 两个边为非正整数 | (13)ab为非正整数 | |||
| (14)ac为非正整数 | ||||
| (15)bc为非正整数 | ||||
| 三个边都为非正整数 | (16)abc为非正整数 | |||
| 一般三角形 |
| (17)a+b<c | ||
| (18)a+c<b | |||
| (19)a>b+c | |||
| 等腰三角形 | (6)a=b!=c | |||
| (7)a=c!=b | ||||
| (8)b=c!=a | ||||
| 等边三角形 | (9)a=b=c | |||
- 划分等价类,得到等价类表。等价类表格式如下:
- 分析边界值:
| 边界值 | a | b | c |
| [1,200] | [1,200] | [1,200] | [1,200] |
- 综合运用这两种方法设测试用例,得到测试用例表:
| 等价类测试用例ID | a | b | c | 预期输出 | 覆盖等价类 |
| T1 | 5 | 5 | 9 | 一般三角形 | (1)(2)(3) |
| T2 | 2 | 3 | 4 | 一般三角形 | (1)(2)(4) |
| T3 | 5 | 3 | 4 | 一般三角形 | (1)(2)(5) |
| T4 | 2 | 2 | 3 | 等腰三角形 | (1)(2)(6) |
| T5 | 4 | 5 | 4 | 等腰三角形 | (1)(2)(7) |
| T6 | 10 | 7 | 7 | 等腰三角形 | (1)(2)(8) |
| T7 | 5 | 5 | 5 | 等边三角形 | (1)(2)(9) |
| T8 | 0 | 1 | 1 | 输入无效 | (10) |
| T9 | 1 | 0 | 1 | 输入无效 | (11) |
| T10 | 1 | 1 | 0 | 输入无效 | (12) |
| T11 | 0 | 0 | 2 | 输入无效 | (13) |
| T12 | 0 | 2 | 0 | 输入无效 | (14) |
| T13 | 2 | 0 | 0 | 输入无效 | (15) |
| T14 | 0 | 0 | 0 | 输入无效 | (16) |
| T15 | 1 | 1 | 3 | 构不成三角形 | (17) |
| T16 | 1 | 5 | 3 | 构不成三角形 | (18) |
| T17 | 6 | 2 | 3 | 构不成三角形 | (19) |
| 边界值测试用例ID | a | b | c | 预期输出 |
| T1 | 1 | 1 | 1 | 等边三角形 |
| T2 | 0 | 1 | 1 | 输入无效 |
| T3 | 1 | 0 | 1 | 输入无效 |
| T4 | 1 | 1 | 0 | 输入无效 |
| T5 | 100 | 120 | 150 | 等腰三角形 |
| T6 | 200 | 200 | 200 | 等边三角形 |
| T7 | 201 | 200 | 200 | 输入无效 |
| T8 | 200 | 201 | 200 | 输入无效 |
| T9 | 200 | 200 | 201 | 输入无效 |
| T10 | 201 | 201 | 201 | 输入无效 |
- 根据上述测试用例表,能否进行优化,获得最小测试用例集合:
| 测试用例ID | a | b | c | 预期输出 | 覆盖等价类 |
| T1 | 5 | 5 | 9 | 一般三角形 | (1)(2)(3) |
| T2 | 2 | 3 | 4 | 一般三角形 | (1)(2)(4) |
| T3 | 5 | 3 | 4 | 一般三角形 | (1)(2)(5) |
| T4 | 2 | 2 | 3 | 等腰三角形 | (1)(2)(6) |
| T5 | 4 | 5 | 4 | 等腰三角形 | (1)(2)(7) |
| T6 | 10 | 7 | 7 | 等腰三角形 | (1)(2)(8) |
| T7 | 5 | 5 | 5 | 等边三角形 | (1)(2)(9) |
| T8 | 0 | 1 | 1 | 输入无效 | (10) |
| T9 | 1 | 0 | 1 | 输入无效 | (11) |
| T10 | 1 | 1 | 0 | 输入无效 | (12) |
| T11 | 0 | 0 | 2 | 输入无效 | (13) |
| T12 | 0 | 2 | 0 | 输入无效 | (14) |
| T13 | 2 | 0 | 0 | 输入无效 | (15) |
| T14 | 0 | 0 | 0 | 输入无效 | (16) |
| T15 | 1 | 1 | 3 | 构不成三角形 | (17) |
| T16 | 1 | 5 | 3 | 构不成三角形 | (18) |
| T17 | 6 | 2 | 3 | 构不成三角形 | (19) |
| T18 | 201 | 200 | 200 | 输入无效 | \ |
| T19 | 200 | 201 | 200 | 输入无效 | \ |
| T20 | 200 | 200 | 201 | 输入无效 | \ |
| T21 | 201 | 201 | 201 | 输入无效 | \ |
2、对于找零钱最佳组合问题运用边界值分析法设计测试用例。实验步骤:
- 分析边界值。
- 运用健壮性边界条件法设计测试用例,得到测试用例表(测试用例表格式同实验1)。
- 执行测试,填写软件缺陷报告(软件缺陷报告格式同实验1)。
3、现有一个程序int CheckTel(char *rc, char *n)执行电话号码有效性检查功能,中国的固定电话号码由两部分组成。这两部分的名称和内容分别是:
- 地区码(rc):以0开头的三位或者四位数字(包括0)。
- 电话号码(n):以非0、非1开头的七位或者八位数字。
对该程序进行边界值分析,然后进行等价类划分,分别运用边界值条件、等价类划分的结果来设计测试用例,并尽可能优化所设计的测试用例。
实验步骤:同上,注意考虑内部边界值。