gpt4 book ai didi

java - Sonar 包排除以增加代码覆盖率

转载 作者:太空宇宙 更新时间:2023-11-04 09:31:49 24 4
gpt4 key购买 nike

工具:SonarQube扫描仪3.2

我希望从 Sonar 代码覆盖范围中排除一些包,其中 Sonar 是 Jenkins 构建管道的一部分。

尝试过的方法(现在添加了提到的包下的所有文件,只是为了检查它是否真的排除了所有java文件!)pom.xml

  1. <sonar.coverage.exclusions>com/**/</sonar.coverage.exclusions>

  2. <sonar.exclusions>{project.basedir}/src/main/java/com/ept/scheduleinterface/dto/**/*, {project/basedir}/src/main/java/com/test/aa//model/</sonar.exclusions>

Jenkins 文件

  1. sonar: [projectKey: PROJECT_NAME, ‘java.libraries’:‘/root/.m2/repository/org/projectlombok/lombok//lombok-.jar’,‘sonar.coverage.exclusions’: 'src/main/java/com//’**],

  2. ’-Dsonar.coverage.exclusions’: 'src/main/java/com//’]**

  3. ’-Dsonar.coverage.exclusions’: 'com//*’]**,

在我的项目结构中,有一个 jenkinsfile 和 pom.xml 文件以及 dockerfile。

但看起来 Sonar 根本不遵守配置。我还可以在 Jenkins 控制台日志中看到我所做的更改,例如jenkins 文件被考虑

运行 shell 脚本:

‘-Dsonar.java.libraries=/root/.m2/repository/org/projectlombok/lombok//lombok-.jar’ ‘-Dsonar.sonar.coverage.exclusions=src/main/java/com/**/*’ -Dsonar.sources=src -Dsonar.java.binaries=target/classes -Dsonar.jacoco.reportPaths=target/jacoco.exec -

screen shot

最佳答案

您需要添加如下内容(将这两个属性放入您的 gradle 文件中)

sonarqube {
properties {


/**
* For detailed meaning of the following exclusion properties, please checkout:
* https://docs.sonarqube.org/display/SONAR/Analysis+Parameters
*/
property "sonar.coverage.exclusions", "**/generated/**/*.java,**/generated-src/**/*.java"
property "sonar.exclusions", "**/generated/**/*.java,**/generated-src/**/*.java"
}
}

关于java - Sonar 包排除以增加代码覆盖率,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57022406/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com