在Gradle中运行一部分测试

时间:2013-09-09 08:49:40

标签: java scala junit gradle

我有一个多项目gradle构建,其中包含Java与JUnit和Scala与Specs测试的混合,以及一些其他技术。

我几乎所有的一切都很好,但我遇到了测试的问题。

我的项目都是按照以下结构组织的

<project>/src/main/... - containing the production source code
<project>/src/tests-unit/... - containing the JUnit or Specs test code

然后可选择

的组合
<project>/src/tests-util/... - containing utility classes for setting up tests
<project>/src/tests-functional/... - containing functional level test code
<project>/src/tests-integration/... - containing integration level test code

我的问题是在这个项目上运行成绩测试实际上会在所有测试目录中运行测试,我希望能够控制正在运行的测试。我想为每个级别的测试设置一个单独的任务,但是如何指定在 / src / tests-unit 层次结构中运行测试而忽略其他测试?

我已经尝试过几个方面,包括为目标设置sourceset的runtimeClasspath,但我只是得到了一个弃用警告,它没有效果。

非常感谢

1 个答案:

答案 0 :(得分:2)

您通常会声明单独的源集和单独的Test任务。有关详细信息,请参阅完整Gradle分发中的samples/java/withIntegrationTests