亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

使用 Kotlin Gradle DSL 向 Kotlin 項目添加集成測試

使用 Kotlin Gradle DSL 向 Kotlin 項目添加集成測試

翻閱古今 2021-08-19 17:31:06
我想向包含集成測試的 Kotlin 項目添加一個額外的“源集”。我看過一些帖子,他們談論為 vanilla Java 項目或 Kotlin 做這件事,但使用 Groovy 而不是 Kotlin Gradle DSL。總之,使用 Kotlin Gradle DSL:如何添加一個額外的“源集”,它可以包含 Kotlin 代碼、Java 代碼和資源,以便將集成測試與常規單元測試分開?如何添加額外的任務和配置以將集成測試與單元測試分開運行?我希望目錄結構看起來像:src   main      java      kotlin      resources   test      java      kotlin      resources   integration      java      kotlin      resources
查看完整描述

2 回答

?
慕慕森

TA貢獻1856條經驗 獲得超17個贊

首先,創建源集和配置:


sourceSets {

    create("intTest") {

        compileClasspath += sourceSets.main.get().output

        runtimeClasspath += sourceSets.main.get().output

    }

}


val intTestImplementation: Configuration by configurations.getting {

    extendsFrom(configurations.implementation.get())

}


val intTestRuntimeOnly: Configuration by configurations.getting {

    extendsFrom(configurations.runtimeOnly.get())

}

然后,創建任務來運行它們:


val integrationTest = task<Test>("integrationTest") {

    description = "Runs integration tests"

    group = "verification"


    testClassesDirs = sourceSets["intTest"].output.classesDirs

    classpath = sourceSets["intTest"].runtimeClasspath

    shouldRunAfter("test")

}

此外,您可以添加要由新源集使用的依賴項。例如:


intTestImplementation("org.junit.jupiter:junit-jupiter-api:$junitVersion")

intTestRuntimeOnly("org.junit.jupiter:junit-jupiter-engine:$junitVersion")


查看完整回答
反對 回復 2021-08-19
  • 2 回答
  • 0 關注
  • 187 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號