测试覆盖率

测试覆盖率(Test coverage)是在软件测试或是软件工程中的软件度量,表示软件程式中被测试到的比例。覆盖率(Coverage)是一种判断测试严谨程度的方式。有许多不同种类的测试覆盖率:

  • 代码覆盖率(code coverage)
  • 特征覆盖率(feature coverage)
  • 情景覆盖率(scenario coverage)
  • 屏幕项目覆盖率(screen item coverage)
  • 模组覆盖率(model coverage)

每一种覆盖率都会假设待测系统已有存在形态基准。因此当系统有变化时,测试覆盖率也会随之改变。

例如以代码覆盖率而言:

  • 程式中特定某一行叙述是否有执行到?
  • 某一行叙述已执行了几次?
  • 是否程式中的所有叙述都至少执行了一次?
  • 是否程式中的所有决策点都有被执行到,因此所有决策路径都有考虑到?
  • 最近的最佳化是否有显著的减少指令路径长度英语instruction path length