测试用例设计——边界值分析法

我们在进行软件测试之前,为了能够逻辑清晰的、更好的没有重复的去执行测试,所以会编写测试用例。在测试用例编写好之后,可以直接按照测试用例来进行测试。那我们用来设计测试用例的方法有很多种,边界值分析法就是里面最常见的一种。因为我们发现大部分的错误是发生在输入输出数据范围的边界上,所以我们采用边界值分析法设计用例可以发现更多的错误,它也是等价类划分法的一种补充 。

简单介绍边界值分析法就是对输入或输出的边界值进行测试的一种黑盒测试方式方法。边界值分析法主要有一般性边界值、健壮性边界值、最坏边界值、最坏健壮性边界值四种分析方法。

在介绍边界值分析法前,首先简单介绍两个概念:

单缺陷假设

失败极少是由两个(或多个)缺陷的同时发生而引起的。基于此假设,边界值分析的用例,通常都是只使一个输入变量取边值,而其它的则取正常值。

 多缺陷假设      

关心多个变量同时取某些值时是否可能引起缺陷。基于此假设,边界值分析的用例,通常都是每个变量作笛卡尔积。

1.一般性边界值分析法

边界值分析基于一个“单故障”假设,也就是说只是由一个变量引起的故障。我们使用一般性边界值分析法设计用例时,只需要取一个变量的边界值,其他变量保持正常即可。

该方法对于一个有n个变量的函数,会设计出4n+1个测试用例。

2.健壮性边界值分析法

健壮性边界值法其实是一般性边界值法的一种扩展,它是对软件的最坏情况进行测试,它在一般性边界值法的基础上,多了略大于最大值、略小于最小值的两种情况的考虑。所以使用健壮性边界值法设计用例时,即考虑变量的最小值、略低于最小值的值、略高于最小值的值、中间值、最大值、略低于最大值的值、略高于最大值的值7个值。对于健壮性测试来讲,最重要的不是它的输入,而是它的期望输出。

对于有n个变量的函数来说,会设计出6n+1个测试用例。

3.最坏边界值分析法

如上面的所说,边界值分析是基于可靠性理论中的单故障假设的,若抛开这个假设,就意味着要考察多个变量同时取极值的情况,这也就是这里要说的最坏边界值分析法来设计测试用例。利用这种思想来构造最坏情况测试用例,我们先对于每个变量先构造最小值、略大于最小值的值、正常值、略小于最大值的值和最大值5个边界值的集合,然后计算这些集合的笛卡尔积。

对于有n个变量的函数来说,会设计出5^{n}个测试用例。

4.最坏健壮性边界值分析法

最坏边界值分析法适用于各个物理量之间存在大量的相互作用,而且函数失效代价极高的情况。在对测试有特别极端的要求时我们就需要采用健壮性最坏情况测试,这就是要用健壮性边界值分析法的7个值的集合做笛卡尔积,得到7^{n}个测试用例。

即对于有n个变量的函数来讲,会设计出7^{n}个测试用例。

综上所述,一般性边界值分析法、健壮性边界值法适用于单缺陷程序;对于多缺陷程序,我们则使用最坏边界值分析法、最坏健壮性边界值分析法。具体事件具体分析,但是设计出的测试用例数量要与上面总结出的公式一致噢。

5.特殊值测试

特殊值测试是一种最广泛的一种功能性测试,它主要依赖于测试人员的经验以及对软件“软肋”的了解去设计测试用例。

6.随机选值测试

随机选值测试即不是永远选取变量的最小值、最大值、中间值、略高于最小值的值、略低于最大值的值,而是使用随机生成器选取随机数来选取测试用例值。

 

注:计算机和软件的计数基础是二进制的,我们在建立等价区间时,若是在测试时间容许的情况下,要考虑下2的乘方边界条件。

©️2020 CSDN 皮肤主题: 像素格子 设计师:CSDN官方博客 返回首页