边界值分析

来源:互联网 发布:境外电视直播软件apk 编辑:程序博客网 时间:2024/05/21 01:47

边界值分析:边界值分析法就是对输入或输出的边界值进行测试的一种黑盒测试方法。

与等价划分的区别:

1) 边界值分析不是从某等价类中随便挑一个作为代表,而是使这个等价类的每个边界都要作为测试条件。

2) 边界值分析不仅考虑输入条件,还要考虑输出空间产生的测试情况。

边界值测试的作用
边界值分析是对等价类划分方法的补充
从测试工作经验得知,大量的错误是发生在输入戒输出范围的边界上,而丌是在输入范围的内部
针对各种边界情况设计测试用例,可以查出更多的错误

编写测试用例的步骤

(1) 根据被测对象的输入(或输出)要求确定边界值。

(2) 选取等于、刚刚大于、刚刚小于边界的值作为测试数据。

注:基本思想是在最小值(min)、略高于最小值(min+)、正常值(nom)、略低于最大值(max-)和最大值(max)等处取值。


其中分为:单缺陷假设和多缺陷假设

--单缺陷假设:是指“失效极少是由两个或两个以上的缺陷同时发生引起的”。要求测试用例只使一个变量取极值,其他变量均取正常值;

--多缺陷假设:是指“失效是由两个或两个以上缺陷同时作用引起的”,要求测试用例时同时让多个变量取极值。

一般边界值:

仅考虑有效区间单个变量边界值(一般边界值):用最小值、略高于最小值、正常值、略低于最大值和最大值。

如果被测变量个数为n,则测试用例个数为4n+1

函数y=f(x1,x2)输入变量的取值范围分别为: x1[a,b]x2[c,d]

例子

有函数fx,y,z,其中x[1900,2100],y[1,12],z[1,31]的。请写出该函数采用基本边界值分析法设计的测试用例?

解:

对于包含3个变量的程序,采用边界值分析法,至少要产生4*3+113个用例

<2000,6,1>

<2000,6,2>

<2000,6,30>

<2000,6,31>

<2000,1,15>

<2000,2,15>

<2000,11,15>

<2000,12,15>

<1900,6,15>

<1901,6,15>

<2099,6,15>

<2100,6,15>

<2100,6,15>


一般最坏情况边界值

         仅考虑有效区间多个变量边界值同时作用(一般最坏情况边界值):用各个变量最小值、略高于最小值、正常值、略低于最大值和最大值的笛卡尔积

         如果被测变量个数为n,则测试用例个数为5^n

函数y=f(x1,x2)输入变量的取值范围分别为: x1[a,b]x2[c,d]


健壮边界值

同时考虑有效区间和无效区间单个变量边界值(健壮边界值):除了最小值、略高于最小值、正常值、略低于最大值、最大值,还要有略超过最大值略小于最小值的值。

如果被测变量个数为n,则测试用例个数为6n+1

函数y=f(x1,x2)输入变量的取值范围分别为: x1[a,b]x2[c,d]


健壮最坏情况边界值

同时考虑有效区间和无效区间多个变量边界值同时作用(健壮最坏情况边界值):用各个变量最小值、略高于最小值、正常值、略低于最大值、最大值、略超过最大值略小于最小值笛卡尔积

如果被测变量个数为n,则测试用例个数为7^n

函数y=f(x1,x2)输入变量的取值范围分别为: x1[a,b]x2[c,d]



特殊值测试
特殊值测试大概是运用得最广泛的一种功能性测试。
当测试人员使用其领域知识、使用类似程序的经验以及关于“软点”信息开发测试用例时,会出现特殊值测试。
特殊测试特别依赖测试人员的能力。尽管特殊值测试是高度主观性的,但是所产生的测试用例集合,常常更能有效地发现缺陷。

随机测试
随机测试的思想是:不是永远选取有界变量的最小值、略高于最小值、正常值、略低于最大值和最大值,而是使用随机数生成器选出测试用例值。
随机测试可以避免出现测试偏见,但是也带来了一个严重的问题:多少随机测试用例才是充分的。
对于有界变量a≤x≤b可采用以下程序(C)生成:•x=int((b-a+1)*random(1))+a
这个程序持续生成随机测试用例,直到每种输出至少出现一次。

主要是根据测试者的经验对软件进行功能和性能抽查。随机测试是根据测试说明书执行测试用例的重要补充手段,是保证测试覆盖完整性的有效方式和过程。

0 0
原创粉丝点击