一、等价类划分

等价类划分是一种重要的、常用的黑盒测试方法,不需要考虑程序的内部结构,只需要考虑程序的输入规格即可。它将不能穷举的测试过程进行合理分类,从而保证设计出来的测试用例具有完整性和代表性。

1、等价类的分类

  有效等价类:指符合《需求规格说明书》,输入合理的数据集合。

  无效等价类:指不符合《需求规格说明书》,输入不合理的数据集合。

2、等价类思考步骤

  (1)先确定有效和无效等价类

  (2)有效等价类就是题目条件(两端的极值(边界值)要判断、中间随意一个值也要判断)

  (3)无效等价类先划分与条件相反的情况,再找到特殊情况(中文、英文、符号、空格、空)

我们来做一下例题:

A、计算 1---100的整数之和(包括1和100)

黑盒测试用例设计方法之等价类和边界值_IT

一般是一个框输入正确的值,一个框输入错误的值,没有两个框都输入错误的值,因为更容易确定到底是哪个框出现错误的值。

B、测试QQ账号,账号的要求是 6---10位正整数。

黑盒测试用例设计方法之等价类和边界值_IT_02

C、

1. 某城市的电话号码由三部分组成。这三部分的名称和内容分别是

        地区码:空白或三位数字;

        前    缀:非’0’或’1’开头的三位数;

        后    缀:四位数字。

解:第一步:划分等价类,包括4个有效等价类,11个无效等价类。

 黑盒测试用例设计方法之等价类和边界值_IT_03

 

  第二步:确定调试用例。

黑盒测试用例设计方法之等价类和边界值_IT_04

 

 对11个无效等价类,要选择11个调试用例,如下所示:

黑盒测试用例设计方法之等价类和边界值_IT_05

 

3、等价类分类总结

通过上面的案例,我们可以总结一下,当我们在测试文本框的程序可以考虑如下的情况:

a:文本框要求输入的长度

b:输入的类型

c:组成规则

d:是否为空

e:是否重复---区分大小写,

f:是否去除空格

二、边界值分析

  所谓边界条件,是指输入和输出等价类中那些恰好处于边界、或超过边界、或在边界一下的状态。边界值分析法也是一种常用的黑盒测试方法。特别要注意的是:大量的错误是发生在输入或输出范围的边界上,而不是在输入范围的内部。

  我们先来看一个例题,解释一下为什么要用边界值。

题目:输入的参数值必须大于0同时小于100的整数。

接下来我们来看程序员写的一段代码:

If Val(Test1.Test) > =0 Or Val(Test1.Test) <= 100 Then

  MsgBox("输入的参数值必须大于0同时小于100")

  Test1.SetFocus

ElseIf Val(Test2.Test) >= 0 or val (Test2.Test) < =100 then

  MsgBox("输入的参数值必须大于0同时小于100")

  Test2.SetFocus

Else

  Test3.Test = Val(Test1.Test) + Val(Test2.Test)

End If

各位思考一下,这里面有什么问题呢。仔细看题目,你会发现程序员边界条件设置错误:把>写成了>=,把<写成了<=。这条代码告诉了我们有效数据和无效数据的分界点,往往作为程序员编写程序的判断点,是程序员容易犯错误的地方,也是测试人员重点测试的内容。

那么我们要怎么去确定这个边界值呢,各位接下来请看:

1、找到测试数据的边界点,也就是有效等价类和无效等价类的边界点,对边界点数据专门进行测试。

2、一般情况下,需要对边界值(0和100)以及边界值两边的数(-1和1以及101和99)分别进行测试。

  这里我们还会讲一个概念叫做上点,离点,内点。这几个名词我也用例子展示给大家看,只要数学不是体育老师教的,都是能看懂的

  如果是闭区间,例如[1,10]。那么上点就是1,10。内点就是区间内任意一个数字,例如5。离点则是0,11
  如果是开区间,例如(1,10)。那么上点就是1,10。内点就是区间内任意一个数字,例如5。离点则是(2,9)
  这两个最大的区别就是在于离点的不同,概括起来一句话就是闭两边,开中间。也就是说闭区间的离点是区间外边相邻的两个数字(0,11),开区间的离点就是区间里边相邻的两个数字(2,9)。

接下来就是例题了

使用边界值的方法设计添加标题的测试用例:标题长度>0 标题长度<=30

黑盒测试用例设计方法之等价类和边界值_IT_06

输入一个学生成绩n,判断是否及格(0到100整数)

黑盒测试用例设计方法之等价类和边界值_IT_07

 

边界值的方法小结:

  1、如果输入条件规定了值得范围,则应取刚到到这个范围的边界值,以及刚刚超越这个范围边界的值作为输入数据。

  两位整数加法器数的范围为-99—99,则应测试-99,-100和99,100,和中间任意数字

  2、输入条件规定了值得个数

  姓名要求1—20个字符,需要测试0、1、2个字符和19、20、21个字符