白盒测试

  白盒测试也称为结构测试或逻辑驱动测试,是根据程序内部结构与逻辑来设计测试用例的,对程序的路径与过程进行测试,检查是否满足设计的需要。常用的白盒测试方法有逻辑覆盖、循环覆盖和路径测试。
(1)逻辑覆盖主要用测试数据运行被测程序对程序逻辑的覆盖程度,按覆盖程度从弱到强排序依次为:语句覆盖、判定覆盖、条件覆盖、判定-条件覆盖、条件组合覆盖、路径覆盖。
  接下来以软考视频所讲为例进行比较。
白盒测试

  总共有4条路径 L1(a→c→e)L2(a→b→d)L3(a→b→e)L4(a→c→d)
白盒测试

  前提条件:
白盒测试
  各覆盖简介:
  语句覆盖:每条语句(判断语句,条件语句等)都执行。
  判定覆盖(分支覆盖):不仅每个语句至少执行一次,而且每个判定的每种可能结果(分支)都至少执行一次。比语句强,真分支假分支都要覆盖。菱形框中为判定。判定覆盖包含语句覆盖。
  条件覆盖:就是设计若干测试用例,运行被测程序,使得程序中每个判断的每个条件可能取值都至少执行一次。每一个条件的真假值都要满足一次(条件和判定的区别:整体与部分的关系,判定范畴较大,条件较小。A>1 and B=0整体为判定,而其中的A>1就是一个条件,同理B=0也是一个条件。)
  判定条件覆盖:既满足条件又满足覆盖。条件覆盖不一定包含判定覆盖。
  条件组合覆盖:设计足够测试用例,运行被测程序,使每个判断的所有可能条件取值组合至少执行一次。
  路径覆盖:足够多的测试用例,覆盖全部可能路径,最强的覆盖。
  测试用例及覆盖条件
白盒测试

  (2)循环覆盖执行足够多的测试用例,使得循环中的每个条件都得到验证
  (3)基本路径覆盖在程序控制流图的基础上通过分析控制流图的环路复杂性,导出基本可执行路径集合,从而设计测试用例。

  白盒测试原则
  (1)程序模块中的所有独立路径至少执行一次
  (2)在所有的逻辑判断中,取真和假值时都至少执行一次。
  (3)每个循环都应在便捷条件和一般条件下个执行一次
  (4)测试程序内部数据结构的有效性等。

  白盒测试也称为结构测试或逻辑驱动测试,是根据程序内部结构与逻辑来设计测试用例的,对程序的路径与过程进行测试,检查是否满足设计的需要。常用的白盒测试方法有逻辑覆盖、循环覆盖和路径测试。
(1)逻辑覆盖主要用测试数据运行被测程序对程序逻辑的覆盖程度,按覆盖程度从弱到强排序依次为:语句覆盖、判定覆盖、条件覆盖、判定-条件覆盖、条件组合覆盖、路径覆盖。
  接下来以软考视频所讲为例进行比较。
白盒测试