IntelliJ IDE 覆盖率配置

8 篇文章 0 订阅
6 篇文章 0 订阅

两分钟全面了解Jacoco

 本文主要详细介绍在IntelliJ IDE中执行测试并展示覆盖情况
 本文IntelliJ IDE版本为2020.1
  1. 插件安装
    安装Coverage插件,通过插件可以在IDE中展示被测代码的覆盖情况,配置路径为IntelliJ IDE -> Preferences -> Plugins,搜索Coverage并安装
    在这里插入图片描述
    安装后就可以点击测试用例运行时选择Run with Coverage,或者右键测试类选择Run with Coverage
    在这里插入图片描述

  2. 插件配置
    配置路径 IntelliJ IDE -> Preferences -> Build,Execution,Deployment -> Coverage
    在这里插入图片描述

    • 何时触发收集覆盖率
      Show options before applying coverage to the editor: 在每次运行测试用例后都会弹框提示如下:
      在这里插入图片描述
      Do not apply collected coverage: 不计算覆盖率.
      Replace active suites with the new one: 计算覆盖率并替换之前的覆盖率,并在覆盖率窗口展示
      Add to the active suites: 计算覆盖率,并将覆盖率结果叠加到覆盖率窗口展示
      Activate Coverage View: 每次运行覆盖率自动弹出覆盖率窗口

    • 覆盖率计算配置
      Ignore implicit constructors: 覆盖率统计中去除默认构造函数.
      Ignore empty private constructors of utility classes: 对于所有方法都为static方法的工具类,其隐藏的空的私有构造函数不计入覆盖率统计

    • 覆盖代码颜色配置
      配置路径:IntelliJ IDE -> Preference -> Editor -> Color Schema -> General -> Line Coverage,可以配置行未覆盖、部分覆盖、全覆盖三种行覆盖率情况的颜色
      在这里插入图片描述

  3. 覆盖率运行配置
    覆盖率插件启动Runner来统计覆盖率,三种覆盖率运行器:

    • IntelliJ IDE:
      Sampling mode 可以快速收集覆盖率,对运行时长影响忽略不计;
      Tracing mode 可以准确的收集分支覆盖率,可以看到具体的覆盖率信息
      在这里插入图片描述

    Track per test coverage 可以详细的查看覆盖该行代码的测试case
    在这里插入图片描述

    • Jacoco: 可以提供多种覆盖率,推荐
    • Emma: 不再维护了,并且当运行在java7时需要关闭框架校验模式,不推荐使用
      Enable Coverage in Test Folders:覆盖率统计包括测试代码,一般不需要开启
      在这里插入图片描述
  4. 运行
    Run With Coverage后,会在覆盖率窗口和项目目录展示覆盖率:

  5. 查看覆盖率
    test suite:代表一组测试用例的集合,每次运行测试都会产生一个testsuite,在idea(mac os)中会默认存放在~/Library/Caches/JetBrains/IntelliJIdea2020.1/coverage中(.ic文件)。通过Run -> Show Code Coverage Data 来选择要查看的覆盖率suite,也可以导入其它构建产生的覆盖率suite文件。
    注:idea产生的.ic文件只能在IDE中查看当前工程的.ic文件
    在这里插入图片描述

  6. 保存报告
    可以在报告工具栏窗口导出html格式的覆盖率报告

  • 3
    点赞
  • 34
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值