黑盒测试用例设计方法之等价类和边界值
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
⿊盒测试⽤例设计⽅法之等价类和边界值
⼀、等价类划分
等价类划分是⼀种重要的、常⽤的⿊盒测试⽅法,不需要考虑程序的内部结构,只需要考虑程序的输⼊规格即可。
它将不能穷举的测试过程进⾏合理分类,从⽽保证设计出来的测试⽤例具有完整性和代表性。
1、等价类的分类
有效等价类:指符合《需求规格说明书》,输⼊合理的数据集合。
⽆效等价类:指不符合《需求规格说明书》,输⼊不合理的数据集合。
2、等价类思考步骤
(1)先确定有效和⽆效等价类
(2)有效等价类就是题⽬条件(两端的极值(边界值)要判断、中间随意⼀个值也要判断)
(3)⽆效等价类先划分与条件相反的情况,再找到特殊情况(中⽂、英⽂、符号、空格、空)
3、例题:
A、测试QQ账号,账号的要求是 6---10位正整数。
B、⼿机号码
1. 某城市的电话号码由三部分组成。
这三部分的名称和内容分别是
地区码:空⽩或三位数字;
前 缀:⾮’0’或’1’开头的三位数;
后 缀:四位数字。
解:第⼀步:划分等价类,包括4个有效等价类,11个⽆效等价类。
第⼆步:确定调试⽤例。
对11个⽆效等价类,要选择11个调试⽤例,如下所⽰:
3、等价类分类总结
通过上⾯的案例,我们可以总结⼀下,当我们在测试⽂本框的程序可以考虑如下的情况:
a:⽂本框要求输⼊的长度
b:输⼊的类型
c:组成规则
d:是否为空
e:是否重复---区分⼤⼩写,
f:是否去除空格
⼆、边界值分析
1.什么是边界值分析法?
边界条件,是指输⼊和输出等价类中那些恰好处于边界、或超过边界、或在边界⼀下的状态。
边界值分析法也是⼀种常⽤的⿊盒测试⽅法。
特别要注意的是:⼤量的错误是发⽣在输⼊或输出范围的边界上,⽽不是在输⼊范围的内部。
我们先来看⼀个例题,解释⼀下为什么要⽤边界值。
题⽬:输⼊的参数值必须⼤于0同时⼩于100的整数。
接下来我们来看程序员写的⼀段代码:
number = int(input("输⼊的参数值必须⼤于0同时⼩于100的整数:"))
if 100 >= number >= 18:
print("输⼊的数据合法")
else:
print("输⼊的数据不符合要求")
各位思考⼀下,这⾥⾯有什么问题呢。
仔细看题⽬,你会发现程序员边界条件设置错误:把>写成了>=,把<写成了<=。
这条代码告诉了我们有效数据和⽆效数据的分界点,往往作为程序员编写程序的判断点,是程序员容易犯错误的地⽅,也是测试⼈员重点测试的内容。
那么我们要怎么去确定这个边界值呢,各位接下来请看:
1、找到测试数据的边界点,也就是有效等价类和⽆效等价类的边界点,对边界点数据专门进⾏测试。
2、⼀般情况下,需要对边界值(0和100)以及边界值两边的数(-1和1以及101和99)分别进⾏测试。
PS:这⾥我们还会讲⼀个概念叫做上点,离点,内点。
如果是闭区间,例如[1,10]。
那么上点就是1,10。
内点就是区间内任意⼀个数字,例如5。
离点则是0,11
如果是开区间,例如(1,10)。
那么上点就是1,10。
内点就是区间内任意⼀个数字,例如5。
离点则是(2,9)
这两个最⼤的区别就是在于离点的不同,概括起来⼀句话就是闭两边,开中间。
也就是说闭区间的离点是区间外边相邻的两个数字(0,11),开区间的离点就是区间⾥边相邻的两个数字(2,9)。
2.例题:
使⽤边界值的⽅法设计添加标题的测试⽤例:标题长度>0 标题长度<=30
输⼊⼀个学⽣成绩n,判断是否及格(0到100整数)
边界值的⽅法⼩结:
1、如果输⼊条件规定了值得范围,则应取刚到到这个范围的边界值,以及刚刚超越这个范围边界的值作为输⼊数据。
两位整数加法器数的范围为-99—99,则应测试-99,-100和99,100,和中间任意数字
2、输⼊条件规定了值得个数
姓名要求1—20个字符,需要测试0、1、2个字符和19、20、21个字符。