白盒测试的各种方法


白盒测试又叫架构测试
语句覆盖<条件覆盖<判定覆盖<条件-判定覆盖<组合覆盖<路径覆盖

一、逻辑测试法设计测试用例

此方法主要是测试覆盖率,以内在逻辑结构为基础进行测试

1.1语句覆盖

使程序中的每个可执行语句至少执行一次。
在这里插入图片描述
如图所示,覆盖的路径依次为1->2->3->4

特点:
(1)程序中每个语句至少执行一次
(2)对程序执行逻辑的覆盖率低,属于最弱的覆盖方式

1.2判定覆盖

含义:在这里插入图片描述
在这里插入图片描述
可以设计的测试用例为:
第一个条件为真,第二个条件为假
第一个条件为假,第二个条件为真
在这里插入图片描述
也可以设计:
第一个条件为真,第二个条件为真
第一个条件为假,第二个条件为假

特点:
优点:不仅满足了判定覆盖还满足了语句覆盖,因此比语句覆盖稍强。
缺点:但仍然无法发现程序段中的逻辑判定错误。

1.3条件覆盖

定义:设计用例,使每个判断中的每个条件的可能取值至少满足一次
在这里插入图片描述
第一个判定框: 第二个判定框:
a>1为真     T1           a=2为真  T3
a>1为假     -T1          a=2为假  -T3
b==0为真       T2           x>1为真   T4
b==0    为假   -T2          x>1为假  -T4
设计:
T1,-T2,T3,-T4
-T1,T2,-T3,T4
其他满足的也可以
特点:
(1)增加了对条件判断情况的判断,增加了测试路径
(2)※条件覆盖不一定满足判断覆盖

1.4判断、条件覆盖(CDC)

定义:设计足够多的测试用例,使得判定中的每个条件的所有可能(真/假)至少出现一次,并且判定本身的判定结果(真/假)也至少出现一次。
设计满足的测试用例:
T1,T2,T3,T4
-T1,-T2,-T3,-T4

1.5条件组合覆盖(MCC)

定义:设计足够多的测试用例,使得每个判定中的各种可能的组合都至少出现一次。
所有条件的组合
满足“条件组合覆盖”的测试用例是一定满足“判定覆盖”、“条件覆盖”和“判定/条件覆盖”的
在这里插入图片描述
测试用例:
全T写一组:
全F写一组:
T和F组合写:
TFTF
FTFT

特点:
组合覆盖一定满足判定覆盖、条件覆盖、判定/条件覆盖

在这里插入图片描述

二、基本路径测试法

2.1定义:

基本路径测试是在程序控制流图的基础上,通过分析控制流图的环形复杂度,导出基本可执行的独立路径的集合。
可以保证被测程序的每一条可执行语句至少执行一次。

2.2程序控制流图

只有结点和边
在这里插入图片描述
复合条件分解为控制流图:
在这里插入图片描述
环形复杂度V(G):
(1)流图中的区域数
(2)V(G) = E-N+2;(边的条数-结点数+2;)
(3)V(G) = P+1;(判定结点数目+ 1)
注意:判定结点个数=分支个数-1;

  • 1
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

释怀°Believe

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值