首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >kotlin多平台覆盖?

kotlin多平台覆盖?
EN

Stack Overflow用户
提问于 2020-01-19 00:12:41
回答 3查看 1.5K关注 0票数 9

在Kotlin多平台项目的公共部分,有没有什么工具可以衡量测试覆盖率?我正在研究将一个Kotlin项目迁移到多平台。我是一名TDD开发人员,代码覆盖率为98%。高达95%的人可以转移到普通用户。我是否正在考虑放弃覆盖指标?

EN

回答 3

Stack Overflow用户

发布于 2020-06-23 08:23:17

我还有一个多平台kotlin项目,它使用jacoco进行测试覆盖。

只需遵循此guide

但在使用gradle kotlin dsl的情况下,需要进行一些配置:

代码语言:javascript
运行
复制
plugins {
    kotlin("multiplatform") version "1.3.72"
    id("java-library")
    jacoco
}

jacoco {
    toolVersion = "0.8.6"
}

tasks.jacocoTestReport {
    val coverageSourceDirs = arrayOf(
            "src/commonMain",
            "src/jvmMain"
    )

    val classFiles = File("${buildDir}/classes/kotlin/jvm/")
            .walkBottomUp()
            .toSet()

    classDirectories.setFrom(classFiles)
    sourceDirectories.setFrom(files(coverageSourceDirs))

    executionData
            .setFrom(files("${buildDir}/jacoco/jvmTest.exec"))

    reports {
        xml.isEnabled = true
        html.isEnabled = true
    }
}

运行以下命令将在您的build/reports/test/jacoco上生成报告

代码语言:javascript
运行
复制
gradle clean build jacocoTestReport
票数 3
EN

Stack Overflow用户

发布于 2020-01-20 03:53:09

AFAIK是唯一能够测量Kotlin覆盖率的工具,它是Jetbrains IDEA。我几乎可以肯定它也可以计算Kotlin MPP的覆盖率,但遗憾的是,我不知道任何明智的方法将其插入CI流水线。

票数 0
EN

Stack Overflow用户

发布于 2021-11-13 13:29:08

试试这个:https://github.com/Kotlin/kotlinx-kover (用于Kotlin代码复盖代理的Gradle插件: IntelliJ和JaCoCo。)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59802396

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档