gradle测试阶段?

时间:2012-01-25 15:09:32

标签: testing groovy junit gradle

有没有办法在gradle中构建自定义测试阶段?

我有一系列测试,即

/unit
/local
/remote

为了几个不同的目的运行JUnit托管测试。我希望能够将这些作为测试阶段运行,例如gradle test:unit,或类似的东西。理想情况下,我还可以为每个测试阶段指定描述,因此gradle tasks描述了每个测试的作用。

这可能吗?如果是这样,怎么样?

我试过了:

sourceSets {
    unit {
        java.srcDir file('src/test/groovy/local')
        resources.srcDir file('src/local/resources')
    }
}
dependencies {...}
task unitTest(type: Test){
    testClassesDir = sourceSets.local.output.classesDir
    classpath = sourceSets.local.runtimeClasspath
}

...从提供的示例中的withIntegrationTests复制,但是当我运行gradle unitTest时,没有测试运行。

1 个答案:

答案 0 :(得分:5)

您只需添加三个Test任务(testUnittestLocaltestRemote)并相应地进行配置。 (您可以重用Java插件附带的testUnit任务,而不是引入test。)如果源位于不同的源文件夹中,添加其他源集也是有意义的。有关详细信息,请查看完整Gradle分布中的samples/java/withIntegrationTests