白盒测试
1. 逻辑覆盖法
语句覆盖(弱覆盖/最常见):
判定覆盖(弱覆盖):
条件覆盖(弱覆盖):
判定-条件覆盖:
条件组合覆盖:
2. 基本路径测试法
(1) 程序控制流图:
(2) 设计基本路径覆盖法的步骤
3. 插桩法:
目标代码插桩法
源代码插桩法
黑盒测试和白盒测试比较
- 逻辑覆盖法
一般有以下五种覆盖方式
语句覆盖,判定覆盖,条件覆盖,判定-条件覆盖,条件组合覆盖
语句覆盖(弱覆盖/最常见):
又称为行覆盖,段覆盖,基本块覆盖
目的:测试程序中的代码是否被执行,它只测试代码中的执行语句,这里的执行语句不包括头文件注释、空行等。
例:设计所有的测试用例来覆盖所有的情况,保证每条可执行语句至少执行一次
优缺点:可以测试到执行语句是否被执行到,但是无法测试程序中存在的逻辑错误. 语句覆盖无需详细考虑每个判断表达式,可以直观地从源程序中有效测试执行语句是否全部被覆盖,由于程序在设计时,语句之间存在许多内部逻辑关系,而语句覆盖不能发现其中存在的缺陷,因此语句覆盖并不能满足白盒测试的测试所有逻辑语句的基本需求。