白盒测试是将测试对象看做一个透明的盒子,允许测试人员利用程序内部的逻辑 结构及有关信息,设计或选择测试用例,对程序所有逻辑路径进行测试。
控制流图(CFG, Control Flow Graph)是一个过程或程序的抽象表示。
- 矩形代表了连续的顺序计算,也称基本块
- 节点是语句或语句的一部分,边表示语句的控制流
代码覆盖率描述的是代码被测试的比例和程度,通过代码覆盖率可以得知哪些 代码没有被覆盖,从而进一步补足测试用例。
语句覆盖:程序中的每个可执行语句至少被执行一次。
判定覆盖(分支覆盖):程序中每个判断的取真和取假分支至少经历一次,即判断真假值均被满足。
条件覆盖:每个判断中每个条件的可能取值至少满足一次。
判定条件覆盖:判断中所有条件的可能取值至少执行一次,且所有判断的可能结果至少执行一次。
条件组合覆盖:判断中每个条件的所有可能取值组合至少执行一次,并且每个判断本身的 结果也至少执行一次。
路径覆盖:覆盖程序中的所有可能的执行路径。
基本路径测试:基本路径测试是在程序控制流图基础上,通过分析控制构造的环路复杂性,导出基本可执行 路径集合,从而设计测试用例的方法。