• 测试覆盖率


    名称

    分母

    分子

    示例

    手工测试覆盖率

    所有测试用例

    手工测试执行的用例

    A系统目前3个测试工程师参与了4个月,写了近300条测试用例,那目前的300条就作为整个测试覆盖率的分母

    接口覆盖率

    接口总数

    测试涉及的接口总数

    系统有10个接口,对其中8个做了接口自动化测试,那么覆盖率就是80%

    自动化测试覆盖率

    测试用例总数

    自动化测试涉及的测试用例总数

    系统有100条测试用例,其中有60条用例已经被自动化脚本化测试,那么覆盖率是60%

    测试用例覆盖率

    测试功能点总数

    自动化测试涉及的测试功能点

    系统有100条测试用例,400个测试功能点(checkpoint),其中200个Checkpoint已经被自动化测试脚本测试,那么覆盖率是50%

    需求覆盖率

    所有用户故事或任务

    已被测试的用户故事或任务

    目的:测试的行为覆盖了每一个需求

    缺陷覆盖率

    已被发现并修复的缺陷数量

    对缺陷进行自动化测试的数量

    A系统上线前共发现了70个缺陷,测试工程师将这70个“已经被修复”的缺陷写成了自动化测试用例

    代码行覆盖率

    代码总行数

    被执行过的代码行数

    一个Java应用有10W行代码,执行了一次手工回归测试,同时也触发了自动化测试脚本,然后利用Jacoco组件查看看测试覆盖率,发现10W行代码中,有3W行代码已经被覆盖了,那么代码行覆盖率就是30%

    代码分支覆盖率

    代码总分支数

    被执行过的代码分支数

    本质上与代码行覆盖率一样,只是统计的维度不一样

     

    自动化测试覆盖率的案例分享

    思路:剔除无意义的套路代码,结合不同的覆盖率指标,综合得出一个相对有价值的覆盖率数据。

    做法

    1,搭建测试覆盖率环境

    Java使用的是Jacoco组件,其他编程语言可以使用其他覆盖率统计组件

    2,执行自动化测试脚本

    触发自动化测试脚本执行,等待执行完毕。

    上图说明:

    • 绿色区域:代码行覆盖率充分,100%覆盖了该代码。
    • 黄色区域:代码行覆盖不充分。
    • 红色区域:代码行未经过覆盖。
    • 绿色钻石:代码分支覆盖率充分,100%覆盖了该代码分支。
    • 黄色钻石:代码分支覆盖率不充分。
    • 红色钻石:代码分支未经过覆盖。

    请注意,此时请勿打开测试环境的系统页面、接口调用等操作,保证数据的真实性。

    3,筛选掉无意义的套路代码

    以SpringBoot框架为例,如bean、model、entity、util、mapper、dao、constant、config等目录,大部分都是套路的代码统统过滤掉。

    留下有业务意义的代码目录:controller、service目录和自己封装的业务函数类,服务端代码的业务逻辑运算、接口的代码逻辑都在这里,这才是代码的核心部分。

    自动化脚本执行完成后,Jacoco测试覆盖率从0%变成了多少,那么目前的自动化测试脚本覆盖率就是多少。

     

    重点

    代码覆盖率本身具有局限性,因为100%的代码覆盖率并不能说明系统质量没有问题。所以除了关注已被测试行为覆盖的代码,更重要的是观察未被覆盖的代码,因为这部分是没有测试用例覆盖到的,让测试工程师自己发现思维的不足、遗漏的用例,这才更有价值。

     

     

    1.作者:Syw
    2.出处:http://www.cnblogs.com/syw20170419/
    3.本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
    4.如果文中有什么错误,欢迎指出。以免更多的人被误导。
  • 相关阅读:
    linux grep显示行数和上下行内容
    Network-Emulator Network-Emulator-Toolkit网络模拟器使用详细介绍(弱网测试工具)
    Fiddler抓包8-打断点(bpu)
    fiddler---Fiddler弱网测试
    详谈基数排序
    hadoop下的Pipes(用C++进行hadoop程序开发)
    hadoop环境安装及简单Map-Reduce示例
    每天一道面试题(2):实现strncpy
    每天一道面试题(1):快速排序
    结合源码看nginx-1.4.0之nginx多进程机制详解
  • 原文地址:https://www.cnblogs.com/syw20170419/p/15555442.html
Copyright © 2020-2023  润新知