一、等价类划分
等价类划分是一种重要的、常用的黑盒测试方法,不需要考虑程序的内部结构,只需要考虑程序的输入规格即可。它将不能穷举的测试过程进行合理分类,从而保证设计出来的测试用例具有完整性和代表性。
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个字符
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/253720.html