19.白盒测试逻辑覆盖有哪几种覆盖标准,覆盖率最高的是什么?
2025-11-25 06:54:04 | 中国队世界杯出线 | admin | 2574°c
语句覆盖:设计若干测试用例,运行被测程序,使程序中每个可执行语句至少执行一次
优点:可以直观的从源代码得到测试用例缺点:仅仅针对程序逻辑中显式存在的语句,无法针对隐藏的条件进行测试。语句覆盖是最弱的逻辑覆盖判断覆盖:设计若干测试用例,运行被测程序,使得程序中每个判断的取真分支和取假分支至少经历一次,判断真假值均曾被满足
优点:判定覆盖具有比语句覆盖更强的测试能力缺点:对于由多个条件组成的判定来讲,容易忽略每个条件的取值情况,这必然会遗漏部分测试路径。判定覆盖是弱的逻辑覆盖条件覆盖:设计若干测试用例,运行被测程序,要使每个判断中每个条件的可能取值至少满足一次
优点:增加了对条件判定情况的测试,增加了测试路径缺点:条件覆盖不一定包含判定覆盖,条件覆盖并不考虑判定结果判定-条件覆盖:设计足够的测试用例,使得判断条件中的所有条件可能至少执行一次取值,同时,所有判断的可能结果至少执行一次
优点:能同时满足判定,条件两种覆盖标准缺点:判定-条件覆盖准则的缺点是未考虑条件的组合条件组合覆盖:设计足够的测试用例,使得所有可能的条件取值组合至少执行一次
优点:条件组合覆盖准则满足判定覆盖,条件覆盖和判定-条件覆盖缺点:线性地增加了测试用例的数量路径覆盖:设计所有的测试用例,用来覆盖程序中的所有可能的执行路径
优点:这种测试方法可以对程序进行彻底的测试,比前面五种的覆盖面都要广缺点:需要涉及大量,复杂的测试用例,使得工作量呈指数级增长,不见得把所有的条件组合都覆盖