白盒测试

白盒测试
又称为结构测试或逻辑驱动测试,通过分析程序内部的逻辑与程序执行路线来设计测试用例的测试方法。属于穷举路径测试。

白盒测试的方法
逻辑覆盖、符号测试、程序变异等。

被测试模块及流程图如下

Begin
if(A>1 and B=0)
then
X=X/4;
if(A=2 or x>1)
then
X=X+1;
Return;
End
这里写图片描述

对于上面流程图,依次规定以下8种状态。
T1:A>1;F1:A<=1;T2:B=0;F2:B!=0
T3:A=2;F3:A!=2;T4:X>1;F4:X<=1

逻辑覆盖

1、语句覆盖(最弱的逻辑覆盖准则)

被测试程序中的每一可执行语句在测试中尽可能检验过。

测试用例:
这里写图片描述

2、判定覆盖

又称为分支覆盖。不仅每个语句必须至少执行一次,而且每个判定的每种可能的结果都应该至少执行一次。

测试用例:
这里写图片描述

3、条件覆盖

使判定表达式中的每个条件都取到各种可能的结果。

条件覆盖比判定条件覆盖功能强,因为它使判定表达式中的每个条件都取到了两个不同的结果,而判定覆盖却只关心整个判定表达式的值。

测试用例:
这里写图片描述

4、判定/条件覆盖

同时满足判定覆盖和条件覆盖。 选取足够多的测试数据,使得判定表达式中的每个条件都取到各种可能的值,而且每个判定表达式也都可以取到各种可能的结果。

测试用例:
这里写图片描述

5、条件组合覆盖

属于更强的逻辑,要求选取足够多的测试数据,使得每个判定表达式中的各种可能组合都至少出现一次。

测试用例:
这里写图片描述

6、路径覆盖

选取足够多的测试数据,使程序的每条可能路径都至少执行一次,如果程序控制流图中有环,则要求每个环至少执行一次。

测试用例:
这里写图片描述

六种逻辑覆盖从弱到强的关系:
语句覆盖->判定覆盖->条件覆盖->判定条件覆盖->条件组合覆盖->路径覆盖
他们之间的关系如下图所示:
这里写图片描述

符号测试

基本思想:允许程序的输入不仅可以数值数据,也可以包括符号值,符号可以是符号变量,也可以是包含这些符号变量的一个表达式。

优点:可以很容易确定所给的一组测试用例是否覆盖了程序的各条路径。

程序变异

程序变异方法是一种错误驱动测试。错误驱动测试是指该方法是针对某类特定程序错误的。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值