白盒测试用例设计方法

白盒测试用例设计方法

  • 示例:

    白盒测试用例设计方法

  • 语句覆盖法:
    • 语句覆盖法是设计若干个测试用例,然后运行程序,使程序的每个可执行语句至少执行一次

      白盒测试用例设计方法

  • 判定覆盖法:

    白盒测试用例设计方法

    • 设计若干个测试用例,然后运行程序,使程序中每个判断的取真分支和取假分支至少被执行一次。

      白盒测试用例设计方法

  • 条件覆盖法:
    • 设计若干测试用例,然后执行程序,使程序中每个判断中每个条件的每个可能取值至少满足一次

      白盒测试用例设计方法

      白盒测试用例设计方法

      白盒测试用例设计方法

  • 判定条件覆盖法:
    • 设计若干测试用例,然后运行程序,使判断中每个条件的可能取值至少出现一次,且每个判断的判定结果也至少出现一次

      白盒测试用例设计方法

  • 条件组合覆盖法:
    • 设计若干个测试用例,然后运行程序,使所有可能的天键的组合都被执行一次

      白盒测试用例设计方法

      白盒测试用例设计方法

  • 路径覆盖法:
    • 设计若干测试用例然后执行程序,覆盖程序中所有可能的路径

      白盒测试用例设计方法

  • 基本路径覆盖法:
    • 在程序控制流图的基础上,分析控制结构的环路复杂性,得出基本可执行路径的集合,设计测试用例。保证程序中的每一个可执行语句至少执行一次。循环体最多执行一次来把覆盖的路径压缩到一定限度内。
    • 独立路径:至少包含一条在其他独立路径中从为包含过的路径
    • 区域:边和节点圈定的区域叫做区域,图形外的区域也应该记为一个区域
    • 环路复杂度(圈复杂度):基本路径集中的独立路径数量。
    • 基本路径覆盖法怎么用?
      • 从详细设计导出流图
      • 计算流图的环路复杂度
      • 确定基本可执行路径集合
      • 设计测试用例,确定基本可执行路径集合中的每一条路径都至少被执行一次
    • 示例:
      • 流图如下

        白盒测试用例设计方法

      • 路径(路径1、路径2、路径3、路径4组成了一个路径基本集):
        • 路径1:1-11
        • 路径2:1-2-3-4-5-10-1-11
        • 路径3:1-2-3-6-8-9-10-1-11
        • 路径4:1-2-3-6-7-9-10-1-11
  • 循环路径测试
    • 简单循环:
      • 零次循环:从循环入口到出口
      • 一次循环:检查循环初始值
      • 两次循环:检查多次循环
      • N次循环:检查更多次循环
      • 最大次数循环、最大次数多一次的循环、最大次数少一次的循环
      • 特别注意增量或减量不是 1 的循环
    • 嵌套循环:
      • 对最内层循环做简单循环的全部测试,所有其他层的循环次数设为最小值
      • 依次外推,所有外层循环的循环次数设为最小值,嵌套内层循环的循环次数设为“典型”值
      • 反复进行,直至所有循环测试完毕
      • 各层循环循环次数同时取最大值,各层循环循环次数同时取最小值