白盒测试_日期
【源码地址】:http://www.cnblogs.com/zhuhaiying/p/6409243.html
【源代码的控制流图】
【分析】
- 第1个判定,所有条件的组合
- 第2个判定,所有条件的组合
- 第3个判定,所有条件的组合
- 第4个判定,所有条件的组合
- 第5个判定,所有条件的组合
- 第6个判定,所有条件的组合
- 第7个判定,所有条件的组合
【几种类型的白盒测试】
- 语句覆盖
>> 概念
选择足够的测试用例,使得运行这些测试用例时,被测程序的每一个语句至少执行一次,其覆盖标准无法发现判定中逻辑运算的错误;
>> 测试用例
- 判定覆盖
>> 概念
指选择足够的测试用例,使得运行这些测试用例时,每个判定的所有可能结果至少出现一次,但若程序中的判定是有几个条件联合构成时,它未必能发现每个条件的错误;
>> 测试用例
- 条件覆盖
>> 概念
指选择足够的测试用例,使得运行这些测试用例时,判定中每个条件的所有可能结果至少出现一次,但未必能覆盖全部分支;
>> 测试用例
- 判定条件覆盖
>> 概念
使判定中每个条件的所有可能结果至少出现一次,并且每个判定本身的所有可能结果也至少出现一次;
>> 测试用例
- 条件决定覆盖
>> 概念
满足条件与判定覆盖,并且需要确定每个条件能够影响到包含的判定的结果。
>> 测试用例
- 条件组合覆盖
>> 概念
使每个判定中条件结果的所有可能组合至少出现一次,因此判定本身的所有可能解说也至少出现一次,同时也是每个条件的所有可能结果至少出现一次;
>> 测试用例
- 路径覆盖
>> 概念
是每条可能执行到的路径至少执行一次;
>> 路径测试的步骤
- 根据测试对象的源程序得带控制流图
- 计算控制流图的圈复杂度C = 边数 - 节点数 + 2
- 选择基本路径
- 为每条路径创建一个测试用例
- 执行测试用例
>> 测试用例
C = 22(边数) - 16(节点数) + 2 = 8
【白盒测试覆盖率的强度关系】