[英]Gradle: how to list all “given tests”
我尝试以下代码:
roroco@roroco ~/Dropbox/jvs/ro-idea $ gradle test --tests "ro.idea.ToggleTest.testIsAd"
:ro:compileJava UP-TO-DATE
:ro:processResources UP-TO-DATE
:ro:classes UP-TO-DATE
:ro:jar
:compileJava
:processResources UP-TO-DATE
:classes
:compileTestJava
:processTestResources UP-TO-DATE
:testClasses
:test
:ro:compileTestJava UP-TO-DATE
:ro:processTestResources UP-TO-DATE
:ro:testClasses UP-TO-DATE
:ro:test FAILED
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':ro:test'.
> No tests found for given includes: [ro.idea.ToggleTest.testIsAd]
* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.
输出显示“未找到给定包含的测试”,我的问题是:如何列出所有“给定测试”以及如何指定“给定测试”
这是我的老问题
我不确定在执行之前列出所有给定的测试,因为我不相信在测试实际执行之前这是已知的。
您可以将它添加到您的build.gradle
文件中:
test {
beforeTest { descriptor ->
logger.lifecycle("Running test: ${descriptor}")
}
}
那么如果你去:
gradle clean test
它将运行所有测试,但也会在执行之前打印出测试描述符,提供method(className)
,如下所示:
:test
Running test: test testC(org.gradle.MySecondTest)
Running test: test testD(org.gradle.MySecondTest)
Running test: test testA(org.gradle.MyFirstTest)
Running test: test testB(org.gradle.MyFirstTest)
或者,您可以在不更改build.gradle
文件的情况下运行前一个命令,然后查看将显示所有测试运行的build/reports/tests/index.html
文件。
那么你可以指定一个单一的测试:
gradle clean test --tests "org.gradle.MyFirstTest.testA"
或者一个类中的所有测试:
gradle clean test --tests "org.gradle.MyFirstTest"
或者一个包中的所有测试:
gradle clean test --tests "org.gradle.*"
您还可以使用:
test {
testLogging {
events "passed", "skipped", "failed"
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.