Gradle:如何排除一些测试?

2022-09-01 04:17:10

我的文件夹包括单元测试和功能测试。函数式测试的类路径有单词,而单元测试没有。那么,如何仅运行单元测试呢?src/test/cucumber

谢谢。

PS:我知道使用“include”逻辑来选择测试很容易。例如,在我的情况下只运行功能测试,我可以简单地使用它

但是,我不知道如何以简单的方式排除测试。./gradlew test -Dtest.single=cucumber/**/

顺便说一句,我使用的是 gradle 1.11。


答案 1

图片来源:这个答案的灵感来自JB Nizet的答案。它被发布是因为它更直接地解决了我的问题。

若要仅运行单元测试,请创建一个新任务,如下所示:

task unitTest( type: Test ) {
    exclude '**/cucumber/**'
}

这样我们就有:
运行所有测试:
运行所有单元测试:
运行所有功能测试:./gradlew test./gradlew unitTest./gradlew test -Dtest.single=cucumber/**/


答案 2

任务的文档通过一个示例和所有内容对其进行了解释:

apply plugin: 'java' // adds 'test' task

test {
  // ...

  // explicitly include or exclude tests
  include 'org/foo/**'
  exclude 'org/boo/**'

  // ...
}

推荐