使用 Kover 和 Sonar 在 Android/Kotlin 上的代码覆盖率在百分比上有所不同

Posted

技术标签:

【中文标题】使用 Kover 和 Sonar 在 Android/Kotlin 上的代码覆盖率在百分比上有所不同【英文标题】:Code coverage on Android/Kotlin with Kover and Sonar differs on percents 【发布时间】:2021-12-28 07:19:40 【问题描述】:

我正在使用 Kover 来获取关于 kotlin 的报道,并希望与 sonar 共享它,配置是这样的:

plugins 
  ...
  id "org.jetbrains.kotlinx.kover" version "0.4.2"
  id "org.sonarqube" version "3.3"


sonarqube 
    properties 
        property "sonar.sourceEncoding", "UTF-8"
        ...
        property "sonar.coverage.jacoco.xmlReportPaths", "$project.buildDir/reports/kover/report.xml"
    


project.tasks["sonarqube"].dependsOn "koverReport"

现在,Kover 的 html 报告显示我有 33% 的覆盖率,而 Sonar 显示 10% 的覆盖率。可能是什么问题?

【问题讨论】:

【参考方案1】:

简单的答案是它们的计算方式不同:https://community.sonarsource.com/t/sonarqube-and-code-coverage/4725。

【讨论】:

以上是关于使用 Kover 和 Sonar 在 Android/Kotlin 上的代码覆盖率在百分比上有所不同的主要内容,如果未能解决你的问题,请参考以下文章

Gradle + Sonar 主机 URL 和基本身份验证

我想知道使用 Sonar 的最佳方法是啥?

sonar-scanner的执行流程和对ClassLoader,动态代理的使用

无法使用 dependency-check-sonar-plugin 获取 html 生成的报告

mac 下sonarqube和sonar scanner的配置和使用

Sonarqube 授权 - 如何在启用 sonar.forceAuthentication 时使用 sonar-maven-plugin 进行授权