梦幻小丑灯 发表于 2021-11-26 15:21:02

代码质量管理平台实战: JaCoCo、Maven 集

Jacoco、Maven 与 SonarQube 的集成
  1.1 前置条件
  1.该项目为maven项目,并且Jacoco已经通过POM文件集成到项目中,具体步骤请参考我的另外的文章。
  2.该集成方案其实还是首先通过maven package 命令去生成对应的覆盖率报告,然后通过sonar scanner直接使用该覆盖率报告并通过一定算法加工并展示到SonarQube的界面上去。
  1.2 配置工作
  1.在项目根目录的 sonar-project.properties 文件中,增添以下配置内容:
# 指定代码覆盖率工具
      sonar.core.codeCoveragePlugin=jacoco
      # 指定exec二进制文件存放路径
      #sonar.jacoco.reportPaths=/jacoco.exec
      #本demo之前设置的exec文件是在工程根目录下的target/coverage-reports下:
      sonar.jacoco.reportPaths=target/coverage-reports/jacoco-unit.exec
      # 以下属性可选择性加,当然也可以不加
      sonar.dynamicAnalysis=reuseReports
      sonar.jacoco.reportMissing.force.zero=false2.在 SoarQube 登录 admin,并通过在【配置-应用市场】下找到Jacoco插件并安装和重启。
http://www.51testing.com/attachments/2021/11/15326880_202111041620051Lhc0.jpg
  1.3 运行
  1. 在项目根目录下,运行 mvn package,当build成功的时候Jacoco的结果就会产生在target/site/jacoco文件夹下。
http://www.51testing.com/attachments/2021/11/15326880_202111041620511XMnW.jpg
  maven package
http://www.51testing.com/attachments/2021/11/15326880_202111041621261kpBA.jpg
  2. 接着,在项目根目录下运行命令 sonar-scanner,如果看到以下结果证明已经覆盖率已经可以在SonarQube上查阅。
http://www.51testing.com/attachments/2021/11/15326880_202111041622021gZBP.jpg
  sonar scanner
http://www.51testing.com/attachments/2021/11/15326880_202111041622321ZBO4.jpghttp://www.51testing.com/attachments/2021/11/15326880_202111041623081Bz5Y.jpg

本文内容不用于商业目的,如涉及知识产权问题,请权利人联系51Testing小编(021-64471599-8017),我们将立即处理








页: [1]
查看完整版本: 代码质量管理平台实战: JaCoCo、Maven 集