软件测试(第2版)_Paul学习06_04——Ch6等价类测试_04
2016-11-26 20:42
561 查看
6.4 佣金问题的等价类测试用例
6.4.1输入等价类
有效等价类:L1={枪机数量:1≤lock≤70}
L2={枪机数量:-1}
S1={枪托数量:1≤stock≤80}
B1={枪管数量:1≤barrel≤90}
无效等价类:
L3={枪机数量:=0,或<-1}
L4={枪机数量:>70}
S2={枪托数量:<1}
S3={枪托数量:>80}
B2={枪托数量:<1}
B3={枪托数量:>90}
(1)WN
用例标识 | 枪机 | 枪托 | 枪管 | 预期输出 |
WN1 | 30 | 30 | 30 | 继续输入 |
WN2 | -1 | 30 | 30 | 计算佣金 |
"立方体"的"一个角"
用例标识 | 枪机 | 枪托 | 枪管 | 预期输出 |
SR1 | -2 | 30 | 30 | 输入超出范围 |
SR2 | 35 | -1 | 30 | 输入超出范围 |
SR3 | 35 | 40 | -1 | 输入超出范围 |
SR4 | -2 | -1 | 30 | 输入超出范围 |
SR5 | -2 | 40 | -1 | 输入超出范围 |
SR6 | 30 | -1 | -1 | 输入超出范围 |
SR7 | -2 | -1 | -1 | 输入超出范围 |
6.4.2输出等价类测试用例
该例子的每一个输入有一个合理的等价类,二个无效等价类,通过有效等价类很难确定程序没有问题,通过对输出值域定义等价类会有一定的帮助。销售额= 45×lock + 30×stock + 25×barrel
可以根据佣金值域定义三个变量的等价类:
S1 = {<lock,stock,barrel>,销售额≤1000}
S2 = {<lock,stock,barrel>,1000<销售额≤1800}
S3 = {<lock,stock,barrel>,销售额>1800}
可以参照第5章立方体来理解
用例标识 | 枪机 | 枪托 | 枪管 | 销售额 | 预期输出 |
OR1 | 5 | 5 | 5 | 500 | 50 |
OR2 | 15 | 15 | 15 | 1500 | 175 |
OR3 | 25 | 25 | 25 | 2500 | 360 |
(1)与弱健壮性测试用例结合在一起,可得到相当不错的测试
(2)再增加一些边界检查,保证从1000、1800附近边界的转移是正确的。
(3)这并不是特别容易,因为我们只能选择枪机、枪托和枪管,碰巧这个例子中的约束设计使三元组的数据"搭配合适"
6.5指导方针和观察
(1)显然,等价类测试的弱形式不如强对应的强形式测试全面(2)如果实现语言是强类型,则没必要使用强壮性测试
(3)如果错误条件非常重要,则进行健壮性测试是合适的
(4)如果输入数据以离散区间和集合定义,则等价类测试是合适的,也适用于如果变量值越界系统就会出现故障的系统
(5)通过结合边界值测试,等价类测试可得到加强
(6)如果程序函数很复杂,则等价类测试是被指示的
(7)强等价类测试假设变量是独立,相应的测试用例相乘会引起冗余问题。如果存在依赖关系,则常常会产生错误的测试用例
(8)在发现"合
a00a
适"的等价关系之前,可能需要进行多次尝试,在有些情况下,如果不能肯定,最好对任何合理的实现进行再次预测
(9)强和弱形式的等价类之间的差别,有助于区分累进测试和回归测试
------------第6章结束--------------
相关文章推荐
- 软件测试(第2版)_Paul学习06_01——Ch6等价类测试_01
- 软件测试(第2版)_Paul学习06_02——Ch6等价类测试_02
- 软件测试(第2版)_Paul学习06_03——Ch6等价类测试_03
- 软件测试(第2版)_Paul学习04_01——Ch3测试人员的离散数学
- 软件测试(第2版)_Paul学习05_01——Ch5边界值测试_01
- 软件测试(第2版)_Paul学习05_02——Ch5边界值测试_02
- 软件测试(第2版)_Paul学习03_01——Ch2举例_02
- 软件测试(第2版)_Paul学习07_02——Ch7基于决策表的测试_02
- 软件测试(第2版)_Paul学习02_01——Ch1测试概述_01
- 软件测试(第2版)_Paul学习02_01——Ch1测试概述_02
- 软件测试(第2版)_Paul学习05_03——Ch5边界值测试_03
- 软件测试(第2版)_Paul学习03_01——Ch2举例_03
- 软件测试(第2版)_Paul学习03_01——Ch2举例_01
- 软件测试(第2版)_Paul学习01——简介
- 软件测试(第2版)_Paul学习07_01——Ch7基于决策表的测试_01
- 软件测试“最佳学习”方法?
- ASP MVC 学习系列——04 利用Selenium写自动化测试
- 测试回顾版-零基础学习软件测试
- 软件测试用例设计方法的学习
- 软件测试“最佳学习”方法?