我对 gradle 比较陌生,我们在项目中同时使用 JUnit 和 testNG 单元测试。在谷歌的帮助下,我想出了如何让 testNG 和 JUnit 测试都运行。以下是我最终实现它的方式
build.gradle
....
task testNG(type: Test) {
useTestNG {}
}
test {
dependsOn testNG
}
但是只生成 JUnit 报告。 Google 再次通过此链接帮助我 https://discuss.gradle.org/t/using-junit-and-testng-together-steps-on-testng-html-file/5484它显示了如何通过配置两个单独的测试报告文件夹来解决看起来与我的问题完全相同的问题,如下所示:
testng.testReportDir = file("$buildDir/reports/testng")
test.testReportDir = file("$buildDir/reports/testjunit")
然而,它并没有确切说明将这两个条目放在哪里,我觉得我会疯狂地尝试查看 gradle 书籍、gradle 示例和 API 而不知道如何去做。根据 API test
任务有一个 reports
属性,您可以在其中配置 TestTaskReports
实例,但无论我尝试什么都失败了。
你能帮我解决这个问题吗?它一定是非常明显的东西,以至于我错过了它。
提前致谢
最佳答案
查看 Test 的 DSL 引用.您可以在 https://docs.gradle.org/current/dsl/org.gradle.api.tasks.testing.Test.html#org.gradle.api.tasks.testing.Test:reports 找到 reports
属性
这给你一个 TestTaskReports .按照这个 route在 DSL 中引导您:
task testNG(type: Test) {
useTestNG {}
reports.html.destination = file("$buildDir/reports/testng")
}
test {
reports.html.destination = file("$buildDir/reports/test")
dependsOn testNG
}
关于testing - Gradle 配置 TestNG 和 JUnit 报告目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30473880/