1.定义
边界值分析法就是对输入或输出的边界值进行测试的一种黑盒测试方法。通常边界值分析法是作为对等价类划分法的补充,这种情况下,测试用例来自等价类的边界。
在测试技术中,边界值分析法与同等价类划分法有这同意重要的地位,测试工作中频繁使用的程度与等价类划分法基本一致,每使用一次等价类划分法都应该对应使用边界值分析法,对着两个方法结合的深入理解,以及灵活使用也是软件测试工作的基础。
2.设计思想
根据大量的测试统计数据,很多错误是发生在输入或输出范围的边界上,而不是发生在输入/输出范围的中间区域。因此针对各种边界情况设计测试用例,可以查出更多的错误。所以,边界值分析法是一种很实用的黑盒测试用例方法,它具有很强的发现故障缺陷能力。
程序错误更可能出现在输入变量的附近,因此选取正好等于、刚刚大于、刚刚小于边界的值;根据输入参数的个数,可以分为单缺陷问题和多缺陷问题。
单缺陷问题即程序输入由一个输入取极值,其他输入取正常值;反之,多缺陷问题就是程序由多个输入参数同时取极值时所产生的问题。
3.边界值类型
通常边界值的类型分为:数值、字符、速度、地址、大小、范围、数量等等。
上述类型的边界值应该在最大/最小、首位/末位、上/下、最快/最慢、最高/最低、最快/最慢、最长/最短中取边界值;如下述取值:

4.边界值测试
1)对于有一个输入变量的应用程序,设计测试用例的时候,使得一个变量在输入值,取最大值、最大值+1、最大值-1、正常中间值、最小值-1、最小值、最小值+1;其中包含两个非法取值(最大值+1,最小值-1);
2)对于有n个输入变量的应用程序,那边界值分析的测试用例个数应为7n+1个;
3)以上两点均是根据单缺陷问题思想所设计的用例;
4)根据多缺陷问题思想,需对上述设计的用例进行补充;在多缺陷思想中,拒绝单缺陷的输入,应注重当多个变量取极值时出现的问题。即对每个输入变量进行边界值的分析,然后对每个输入变量的边界值集合进行笛卡尔积计算。对于无效输入值不进行计算(根据等价类分析法,一个用例只能存在覆盖一个输入变量的非法值)那对于有n个输入变量的程序,该测试用例会存在5^n个用例。
综上来看对于n个输入变量的程序,会产生7n+1个单缺陷输入用例和5^n个多缺陷用例。
5)边界特殊值,特殊值使用业务领域知识,进行赋值,如64,128,2月29日等;
5.举个栗子
1)规定了输入取值范围为0-100的整数,如学生考试成绩。
则根据边界值分析法输入可取-1,0,1,50,99,100,101等值;
2) 规定了2个输入变量,长度取值范围为1-20的整数,宽度为1-10的整数,根据两个输入计算面积。
根据边界值分析法长度的边界值取值范围:0,1,2,10,19,20,21;宽度的边界值取值范围:0,1,2,5,9,10,11;
单缺陷输入用例:长度取正常值,宽度遍历边界值取值集合;宽度取正常值,长度遍历边界值取值集合;
多缺陷输入用例:去掉两个取值集合中的非法值,得长度的取值集合为:1,2,10,19,20;宽度的取值集合为:1,2,5,9;并将两个输入变量取值的集合进行笛卡尔积计算,得出用例如下:





