微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Sonarcloud的覆盖范围似乎正在计算测试代码行

如何解决Sonarcloud的覆盖范围似乎正在计算测试代码行

我正在使用Sonarcloud分析Android应用程序的代码库,但是当我添加很多测试代码行时,我注意到总体覆盖范围上有些奇怪的效果

例如,今天早上,总覆盖率是41.6%,然后我添加一个测试类(有很多行),但是代码库没有其他更改,然后总测试覆盖率下降到了41.3,甚至尽管我实际测试的课程覆盖率有所提高。

除非我缺少任何内容,否则我只能看到的解释是Sonarcloud涵盖的范围也包括测试类中的无代码行。

据我所知,我排除了sonarcloud配置中的测试类,请参阅为此设置的gradle:

sonarqube {
    properties {
        property "sonar.projectVersion",android.defaultConfig.versionName
        property "sonar.projectName","Oppia Core app"
        property "sonar.host.url","https://sonarcloud.io"
        property "sonar.sources","src/main/java"
        property "sonar.binaries","build/intermediates/app_classes/normalDebug"
        property "sonar.java.binaries","build/intermediates/app_classes/normalDebug"
        property "sonar.tests","src/test/java,src/androidTest/java"
        property "sonar.java.test.binaries","build/intermediates/app_classes/normalDebug"
        property "sonar.coverage.jacoco.xmlReportPaths","build/reports/coverage/normal/debug/report.xml"
        property "sonar.exclusions","app/src/test/java/**/*,app/src/androidTest/java/**/*," +
                "src/test/java/**/*,src/androidTest/**/*,src/test/java,src/androidTest/java"
        property "sonar.test.exclusions",src/androidTest/java"
        property "sonar.coverage.exclusions",src/androidTest/java"

        def sonarqubePropsFile = rootProject.file('sonarqube.properties')
        if (sonarqubePropsFile.canRead()) {
            def sonarqubeProps = new Properties()
            sonarqubeProps.load(new FileInputStream(sonarqubePropsFile))

            property "sonar.projectKey",sonarqubeProps["sonar.projectKey"]
            property "sonar.organization",sonarqubeProps["sonar.organization"]
            property "sonar.login",sonarqubeProps["sonar.login"]
        }
    }
}

我想知道是否需要为sonar.coverage.jacoco添加一个额外的属性,以确保jacoco不计算测试代码行?

其他信息:这是一个开源项目,因此您可以在以下位置查看完整的应用程序和测试代码https://github.com/DigitalCampus/oppia-mobile-android,而sonarcloud分析位于:https://sonarcloud.io/dashboard?id=org.digitalcampus.mobile.learning

对于我所注意的任何帮助和/或解释,将不胜感激,

干杯, 亚历克斯

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。