如何使用Gradle运行JUnittesting?

目前我有以下build.gradle文件:

apply plugin: 'java' sourceSets { main { java { srcDir 'src/model' } } } dependencies { compile files('libs/mnist-tools.jar', 'libs/gson-2.2.4.jar') runtime fileTree(dir: 'libs', include: '*.jar') } 

build.gradle文件是我的存储库在这里 。 我所有的主要文件都在src / model /中,并且各自的testing都在test / model中

如何正确添加JUnit 4 依赖项 ,然后在testing/模型文件夹中运行这些testing?

如何正确添加junit 4依赖项?

假设你正在解决一个标准的Maven(或同等)回购:

 dependencies { ... testCompile "junit:junit:4.11" // Or whatever version } 

在testing/模型的文件夹中运行这些testing?

你用相同的方式设置你的testing源:

 sourceSets { ... test { java { srcDirs = ["test/model"] // Note @Peter's comment below } } } 

然后调用testing:

 ./gradlew test 

如果您使用默认的gradle包结构设置您的项目,即:

 src/main/java src/main/resources src/test/java src/test/resources 

那么你将不需要修改源码集来运行你的testing。 Gradle会发现你的testing类和资源在src / test中。 然后你可以像奥利弗上面所说的那样跑步。 有一件事要注意:在设置属性文件和使用Gradle和IDE运行testing类时要小心。 我使用Eclipse,当从中运行JUnit时,Eclipseselect一个类path(bin目录),而gradle则select另一个(构build目录)。 如果您编辑资源文件,这可能会导致混淆,并且在testing运行时看不到您的更改。