边界值分析

弱健壮边界值分析(Weak Robust BVA)

下面用一步步的推导来说明为什么弱健壮边界值分析(Weak Robust BVA)会产生 4n+14n+14n+1 个测试用例。

一、先回顾普通的边界值分析(Weak Normal BVA)

  • 目标:对每个变量只取「最小值(Min)」、「最大值(Max)」和一个「一般值(Nominal)」(通常是区间中间值)。
  • 用例组成

对于第 iii 个变量,取两端边界:Min 和 Max,各贡献 2 个用例;

其余 n−1n-1n1 个变量都取 Nominal 值;

最后再加一个「所有变量都取 Nominal」的用例。

  • 数量计算

2n⏟每个变量各取一次 Min/Max,其他变量取 Nominal  +  1  =  2n+1 \underbrace{2n}_{\substack{\text{每个变量各取一次 Min/Max,}\\\text{其他变量取 Nominal}}} \;+\;1 \;=\;2n + 1 每个变量各取一次 Min/Max其他变量取 Nominal2n+1=2n+1

二、引入“健壮性”(Robustness)

为了做健壮性测试,需要在每个边界的基础上再加上无效边界(即超出规格的取值):

  • 对于每个变量:

有效边界:Min、Max → 2 个值

无效边界:Min–(小于最小)、Max+(大于最大) → 2 个值

  • 所谓“弱健壮” 就是在普通 BVA 的基础上,为每个变量额外各加一个无效边界值,而不是对所有组合都做全排列。

三、计算弱健壮边界值分析的用例数

  1. 普通 BVA 用例2n+12n + 12n+1
  2. 额外的无效边界用例
  • 每个变量各有两个无效边界(Min–、Max+),在做测试时:

取一个变量的某个无效边界值,其他 n−1n-1n1 个变量都取 Nominal

这样对每个变量就有 2 个用例

  • 共计 2×n=2n2 \times n = 2n2×n=2n
  1. 合并

(2n+1)  +  2n  =  4n+1 (2n + 1) \;+\; 2n \;=\; 4n + 1 (2n+1)+2n=4n+1

四、举例说明

n=2n = 2n=2(两个变量 x,yx, yx,y):

  1. 普通 BVA
  • (x,y)(x,y)(x,y) = {(Min,Nom), (Max,Nom), (Nom,Min), (Nom,Max)} 共 4 个
  • 全 Nominal:(Nom,Nom)(Nom,Nom)(Nom,Nom) 1 个
  • 合计 2×2+1=52\times2 + 1 = 52×2+1=5
  1. 额外无效边界
  • (Min–,Nom)(Min–, Nom)(Min,Nom)(Max+,Nom)(Max+, Nom)(Max+,Nom) → 2 个
  • (Nom,Min–)(Nom, Min–)(Nom,Min)(Nom,Max+)(Nom, Max+)(Nom,Max+) → 2 个
  • 合计 2×2=42 \times 2 = 42×2=4
  1. 总数5+4=95 + 4 = 95+4=9,即 4×2+1=94\times2 + 1 = 94×2+1=9

“最坏情况边界值分析”(Worst-Case BVA)

“最坏情况边界值分析”(Worst-Case BVA)中之所以会产生 5n5^n5n 个测试用例,是因为对每个变量都要取五个代表值,然后做全组合。具体推导如下:

  1. 为每个变量选取 5 个值
  • Min(最小边界)
  • Min+(最小边界内侧一点)
  • Nominal(一般值/中间值)
  • Max-(最大边界内侧一点)
  • Max(最大边界)
  1. 全组合
  • 共有 nnn 个变量,每个变量都有 5 种取值,测试时要考虑它们的所有可能组合。
  • 组合总数=每个变量取值数的乘积=5×5×⋯×55 \times 5 \times \cdots \times 55×5××5(共 nnn 项)
  • 因此,总用例数=5n\displaystyle5^n5n

例子

  • n=2n=2n=2(两个变量 x,yx, yx,y),则每个变量取 {Min,Min+,Nom,Max−,Max}\{Min, Min+, Nom, Max-, Max\}{Min,Min+,Nom,Max,Max} 共 5 个值,
    全组合后共 52=255^2 = 2552=25 个测试用例。
  • n=3n=3n=3,则有 53=1255^3 = 12553=125 个用例,依此类推。

这样就清楚地说明了:在最坏情况边界值分析里,因为要对每个变量的所有 5 个关键取值做笛卡尔积,所以总用例数是 5n5^n5n

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值