小复习(1)

66 阅读2分钟

小复习(1)

测覆盖率的实际应用

一、测试覆盖率的运用

1、简单的测试覆盖率:本次测试执行的用例数/所有用例数

  • 一般对于大型系统测试要求覆盖率100%

  • 覆盖率的审核:抽样验收

2、基于产品的测试覆盖率:已测试需求点 / 设计所有需求数

  • 以产品、需求维度统计,无论大型项目或是小需迭代都要求覆盖率达到100%
  • 覆盖率的审核:抽样验收

3、基于白盒的测试覆盖率:大多工具判语句于覆盖,即单元测试代码覆盖代码行/总代码行

  • 更多考察研发人员;更多时候要求覆盖率达到80%+
  • 缺点:覆盖率数据只能代表测试过哪些代码,不能代表是否测试好这些代码;容易遗漏逻辑、判断场景

4、基于自动化的测试覆盖率:自动化覆盖的测试场景(测试用例)/所有测试场景(用例)

  • 80/20原则。比如用户80%的时间在使用20%的功能,20%的功能就可以支撑起用户最关键的业务场景,自动化测试的用例更着重于这20%的核心功能。
  • 用途:自动化测试更着重于回归验证,没必要追求过高的覆盖率,而要考虑设计用例。

5、测试覆盖率的最终意义

  • 应用最多的地方在测试停止标准。
  • 单纯讨论测试覆盖率,在瀑布式开发模型中并不重要,但在螺旋式、敏捷开发模型中,由于不断迭代累加,很难确定哪些模块在开发过程中没有给予足够的测试。
  • 在短迭代、Devops中,更强调用单元测试覆盖率来评估不断增加的代码量。