边界条件是指软件计划的操作界限所在的边缘条件.如果软件测试问题包含确定的边界,那么数据类型可能是:
数值速度字符地址位置尺寸数量,同时,考虑这些类型的下述特征:
第一个/最后一个最小值/最大值
开始/完成超过/在内
空/满最短/最长
最慢/最快最早/最迟
最大/最小最高/最低
相邻/最远
越界测试
通常是简单加1或者很小的数(对于最大值)和减少1或者很小的数(对于最小值),例如:
第一个减1/最后一个加1
开始减1/完成加1
空了再减/满了再加
慢上加慢/快上加快
最大数加1/最小数减1
最小值减1/最大值加1
刚好超过/刚好在内
短了再短/长了再长
早了更早/晚了更晚
最高加1/最低减1
另一些该注意的输入:默认,空白,空值,零值和无;非法,错误,不正确和垃圾数据.
选择测试用例的原则:
一、如果输入条件规定了值的范围,则应该取刚达到这个范围的边界值,以及刚刚超过这个范围边界的值作为测试输入数据;
二、如果输入条件规定了值的个数,则用最大个数、最小个数、比最大个数多1格、比最小个数少1个的数做为测试数据;
三、根据规格说明的每一个输出条件,使用规则一;
四、根据规格说明的每一个输出条件,使用规则二;
五、如果程序的规格说明给出的输入域或输出域是有序集合(如有序表、顺序文件等),则应选取集合的第一个和最后一个元素作为测试用例;
六、如果程序用了一个内部结构,应该选取这个内部数据结构的边界值作为测试用例;
七、分析规格说明,找出其他可能的边界条件。
边界值法举例
找零钱最佳组合
假设商店货品价格(R)皆不大于100元(且为整数),若顾客付款在100元内(P),求找给顾客之最少货币个(张)数?(货币面值50元(N50),10元(N10),5元(N5),1元(N1)四种)
一、分析输入的情形。
R>100
0<R<=100
R<=0
P>100
R<=P<=100
P<R
二、分析输出情形。
N50=1
N50=0
4>N10>=1
N10=0
N5=1
N5=0
4>N1>=1
N1=0
三、分析规格中每一决策点之情形,以RR1,RR2,RR3表示计算要找50,10,5元货币数时之剩余金额。R>100R<=0
P>100
P<R
RR1>=50
RR2>=10
RR3>=5
四、由上述之输入/输出条件组合出可能的情形。
R>100
R<=0
0<R<=100,P>100
0<R<=100,P<R
0<R<=100,R<=P<=100,RR=50
0<R<=100,R<=P<=100,RR=49
0<R<=100,R<=P<=100,RR=10
0<R<=100,R<=P<=100,RR=9
0<R<=100,R<=P<=100,RR=5
0<R<=100,R<=P<=100,RR=4
0<R<=100,R<=P<=100,RR=1
0<R<=100,R<=P<=100,RR=0
五、为满足以上之各种情形,测试资料设计如下:
1.货品价格=101
2.货品价格=0
3.货品价格=-1
4.货品价格=100,付款金额=101
5.货品价格=100,付款金额=99
6.货品价格=50,付款金额=100
7.货品价格=51,付款金额=100
8.货品价格=90,付款金额=100
9.货品价格=91,付款金额=100
10.货品价格=95,付款金额=100
11.货品价格=96,付款金额=100
12.货品价格=99,付款金额=100
13.货品价格=100,付款金额=100
|