下载全书

测试覆盖率

0
0
963
贡献人:

定义
编辑

测试覆盖率是被测试覆盖的条目占总的需要测试条目的比例。指标反映了测试对需求或代码的覆盖程度,利于保证测试质量。它通常分为两大类:需求覆盖率和代码覆盖率。

  • 需求覆盖率:这是指测试对需求的覆盖程度。在敏捷开发模式下,需求通常会转换成测试需求,然后基于测试需求设计测试点,以确保每个需求都被覆盖。

  • 代码覆盖率:这通常指的是至少被执行了一次的代码条目数占整个条目数的百分比。这里的“条目数”可以是代码语句、函数或路径,对应不同的代码覆盖率类型的定义。代码覆盖率的三种最常用的指标包括:

      * 行覆盖率(Statement Coverage):已经被执行到的语句占总可执行语句的百分比。
      * 判定覆盖(Decision Coverage 或 Branch Coverage):代码中每个判断的取真分支和取假分支是否各被覆盖至少一次。
      * 条件覆盖(Condition Coverage):判定中的每个条件的可能取值至少满足一次
    

为什么
编辑

  • 找出潜在的遗漏测试用例,并有针对性地进行补充。

  • 识别代码中不可达的废弃代码

如何使用
编辑

计算方法:测试覆盖率 = 测试覆盖的条目数量 / 需要测试条目的总数量
计量单位:%
涉及阶段:需求、开发、测试
补充说明
测试覆盖率是指对测试人员完成用例的度量和评估。它通常依据某种覆盖准则来对测试用例执行情况进行衡量,以判断测试执行得是否充分。

常见问题解答
编辑

如何提高测试覆盖率?

  • 增加测试用例数量和质量:精心设计更具代表性、边界值和异常情况的用例。

  • 进行代码覆盖分析:借助工具确定哪些代码部分未被测试到,针对性补充。

  • 探索性测试:鼓励测试人员在常规测试之外进行自由探索式测试。

  • 针对变更部分重点测试:每次代码变更后,对相关功能和可能影响的区域强化测试。

参考资料
编辑

《软件研发效能度量规范》,中关村智联软件服务业质量创新联盟。

实战案例
编辑

在实际项目管理实践中,测试覆盖率可以与代码管理、项目管理等DevOps工具结合使用,进行精细化的统计和管理。例如,爱奇艺开发团队和QA团队探索了如何接入和使用代码覆盖率,以提高代码质量。他们通过整合DevOps工具,支持计算生成代码分支级别、需求级别的精细粒度增量代码覆盖率报告。

我们非常重视知识产权,我们在非常努力地寻找最初的出处来源并注明出处。但因为互联网信息浩瀚,难免会有疏漏。如果您觉得有侵犯您的权益,请联系我们。

请提出您的意见
通过审核后显示您的意见

文章导航

定义
为什么
如何使用
常见问题解答
参考资料
实战案例

主要贡献人

晏瑞宇

实践被点赞 9

实践被收藏 1

加入社区微信群
与行业大咖零距离交流学习
PMO实践白皮书
白皮书上线