一什么是白盒测试
1.白盒测试:也叫透明测试,检查程序内部结构及路径是否符合规格说明,是否符合其代码规范。
二.白盒测试方法
语句覆盖、判断覆盖、条件覆盖、判断、条件覆盖、条件组合覆盖、路径覆盖。
以如下代码为例
1.语句覆盖法
指设计若干个测试用例,使程序运行时每个可执行语句至少被执行一次。
2.判断覆盖法
指设计若干个测试用例,使得程序运行时,每个判断条件的真假分支至少被执行一次
3.条件覆盖法
指设计若干个测试用例,使得程序运行时,每个判断条件中的每个判断式的真、假值至被执行一次
4.判断、条件覆盖法
指设计若干个测试用例,使得程序运行时,每个判断条件中真、假值分支至少被执行一次,且每个判断条件的内部判断式的真、假值至少被执行一次。
5.条件组合覆盖法
指设计若干个测试用例,使得程序运行时,每个判断条件的内部判断式的各种真假组合都至少被执行一次;是逻辑覆盖测试中“覆盖能力”最强的。
6.路径覆盖
旨在保证程序中每一个特定的路径方案都能正常运行。
常见的路径覆盖方法:2种
A:独立路径覆盖
定义:
即覆盖所有的独立路径的测试,所谓独立路径应至少包含一条在其它路径中从未有过的边
B:Z路径覆盖
Z路径覆盖:
是一种将实际项目中复杂的程序减少其循环次数的路径覆盖方法,
即:不考虑循环体实际需要执行多少次,只考虑通过循环体0次和1次这两种情况
Z路径覆盖:
0次循环:直接跳过循环体,从循环体入口直接到出口
1次循环:通过一次循环体即可
二.白盒测试优点
1.深入程序内部,测试力度较细
2.是测试用例设计方法的组成部分,也是黑盒测试方法的有力补充
3.为自动化测试和性能测试奠定基础
三.白盒测试缺点
1.过分关注代码本身,容易忽略需求
2.相当应的编程语言要求较高,人力成本较大。