白盒测试入门

本文介绍了白盒测试的基本概念,包括其在单元测试中的应用。详细阐述了不同逻辑覆盖方法,如语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖和路径覆盖,并通过实例分析了这些方法的执行要求和效果。通过实例代码和程序流程图,解释了如何运用这些方法进行有效的白盒测试。

一、白盒测试是什么

根据代码内部逻辑实现来进行的测试,通常由开发人员在单元测试阶段进行验证。

二、白盒测试方法有哪些

有代码检查法、静态结构分析、逻辑覆盖法、基本路径覆盖法和路径覆盖等。

2.1 逻辑覆盖方法有哪些

方法

说明

语句覆盖

每条语句至少执行一次

判定覆盖(也叫分支覆盖)

每个判定的每个分支至少执行一次

条件覆盖

每个判定的每个条件应取各种可能的值

判定/条件覆盖

同时满足判定覆盖条件覆盖

条件组合覆盖

每个判定中各条件的每一种组合至少出现一次

路径覆盖

每一条可能的路径至少执行一次

2.2 逻辑覆盖的强弱

发现错误能力由弱到强如下:

语句覆盖< 判定覆盖< 条件覆盖< 判断/条件覆盖< 条件组合覆盖< 路径覆盖

补充:
1 满足判定/条件覆盖的用例也一定满足条件覆盖、判定覆盖、语句覆盖

2 路径覆盖未必考虑判定/条件结果的组合,并不能替代判定/条件覆盖和条件组合覆盖

三、实例说明

3.1 源代码

public void function(int a, int b, int c)

{

    if ((a > 1) && (b == 0))

    {

        c /= a;

    }

    if ((a == 5) || (c > 1))

    {

        c += 1;

    }

    c = a + b + c;

}

3.2 程序流程图

图中A、B、C、D、E分别表示路径,并且记第一个判断为P1,第二个判断为P2;一共有4个条件,我们记C1:a>1、C2:b=0、C3:a=5、C4:c>1,接下来开始分析。

3.3 方法分析

3.3.1 语句覆盖

测试数据

C1

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值