我是 Gradle 的新手。我使用 Gradle 1.10 和 Ubuntu 13。
我想知道是否有任何命令只执行一个单元测试类,类似于testOnlySBT。
testOnly
运行单个测试类 Airborn 的答案很好。
通过使用此处找到的一些命令行选项,您可以简单地执行此类操作。
gradle test --tests org.gradle.SomeTest.someSpecificFeature gradle test --tests *SomeTest.someSpecificFeature gradle test --tests *SomeSpecificTest gradle test --tests all.in.specific.package* gradle test --tests *IntegTest gradle test --tests *IntegTest*ui* gradle test --tests *IntegTest.singleMethod gradle someTestTask --tests *UiTest someOtherTestTask --tests *WebTest*ui
从 gradle 1.10 版开始,它支持使用测试过滤器选择测试。例如,
apply plugin: 'java' test { filter { //specific test method includeTestsMatching "org.gradle.SomeTest.someSpecificFeature" //specific test method, use wildcard for packages includeTestsMatching "*SomeTest.someSpecificFeature" //specific test class includeTestsMatching "org.gradle.SomeTest" //specific test class, wildcard for packages includeTestsMatching "*.SomeTest" //all classes in package, recursively includeTestsMatching "com.gradle.tooling.*" //all integration tests, by naming convention includeTestsMatching "*IntegTest" //only ui tests from integration tests, by some naming convention includeTestsMatching "*IntegTest*ui" } }
对于多风格环境(Android的常见用例),请检查此答案,因为该--tests参数将不受支持并且您会收到错误消息。 请注意,如果您有不同的构建(失败),该--tests选项可能不起作用。在这种情况下,有必要指定特定的测试任务(例如,而不仅仅是)types/flavors``Unknown command-line option '--tests'``testProdReleaseUnitTest``test
--tests
types/flavors``Unknown command-line option '--tests'``testProdReleaseUnitTest``test