【问题标题】:sonar package exclusion to increase code coverage声纳包排除以增加代码覆盖率
【发布时间】:2019-11-23 03:11:18
【问题描述】:

工具:SonarQube 扫描仪 3.2

我希望从声纳代码覆盖范围中排除一些包,其中声纳是詹金斯构建管道的一部分。

尝试过的方法(现在在提到的包下添加所有文件只是为了检查它是否真的排除了所有 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>

詹金斯文件

  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。

但看起来声纳根本不遵守配置。 我还可以在 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 -

【问题讨论】:

    标签: java jenkins sonarqube sonarqube-scan


    【解决方案1】:

    你需要像下面这样写(把这两个属性放在你的 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"
    }
    }
    

    【讨论】:

      猜你喜欢
      • 2013-11-21
      • 2012-03-08
      • 1970-01-01
      • 2018-08-22
      • 2016-10-19
      • 2011-08-10
      • 2012-09-04
      • 1970-01-01
      • 2012-10-05
      相关资源
      最近更新 更多