Intellij Idea 如何使用Kover生成CodeCoverage-Reports?

mspsb9vt  于 2023-04-29  发布在  其他
关注(0)|答案(1)|浏览(122)

我正在我的系统上用一个小项目尝试KotlinNative。在某种程度上,我想得到我的测试的代码覆盖率。IntelliJ提供了选项“Run with Coverage”,该选项不生成Coverage报告。经过一点搜索,我找到了kover,它可以为Kotlin原生提供CodeCoverage-Reports。
不幸的是,我无法使它的工作,即使与最低限度的设置如下。

  • build. gradle。kts*
plugins {
    kotlin("multiplatform") version "1.8.0"
    id("org.jetbrains.kotlinx.kover") version "0.6.1"
}

group = "me.user"
version = "1.0-SNAPSHOT"

repositories {
    mavenCentral()
}

kotlin {
    macosX64()
    sourceSets {
        val macosX64Main by getting
        val macosX64Test by getting
    }
}
  • Main.kt*
class Main{
    fun add(first : Int, second : Int) : Int{
        return 4;
    }
}
  • MainTest.kt*
import kotlin.test.Test
import kotlin.test.assertEquals

class MainTest{
    @Test
    fun addTest(){
        assertEquals(Main().add(2,2), 4);
    }
}

我遵循了heredocumentation的描述。在文档中,它指出,应用插件后

plugins {
     id("org.jetbrains.kotlinx.kover") version "0.6.1"
}

一旦你应用了Kover,你就可以运行它,而不需要额外的配置。
不幸的是,运行 allTests 和运行 report-Tasks都不会生成CodeCoverage文件。
我错过了什么?

ghg1uchk

ghg1uchk1#

这是一个已知的issue,应该在即将发布的版本中修复。

相关问题