【发布时间】:2015-05-28 15:15:36
【问题描述】:
我的 junit4 测试用例从位于“src/myTest/java/data”目录下的主测试源文件夹下的 XML 文件中读取。
当我执行我的测试时,我得到了 file not found 异常,因为它不知道这个数据文件夹。包含这些 XML 文件的最佳方式是什么,以便在我执行测试时,gradle 能够获取这些数据文件的位置。
谢谢
更新
我将数据文件移动到资源目录,现在我可以在我的测试执行中指定我的资源目录。
task myTests(type: Test) {
testClassesDir = sourceSets.myTests.output.classesDir
classpath = sourceSets.myTests.runtimeClasspath + sourceSets.myTests.resources
}
但是当我编译我的测试时,它似乎没有将资源输出到“build/resources/myTests”中,我觉得这就是为什么我需要在类路径中指定资源文件夹以包含“sourceSets.myTests”。资源”,否则它会从构建路径中获取它。
sourceSets {
myTests {
java {
compileClasspath += main.output + test.output
runtimeClasspath += main.output + test.output
}
resources {
include "*.xml"
output.resourcesDir 'build/resources/myTests'
}
}
}
task myTest(type: Test) {
testClassesDir = sourceSets.myTests.output.classesDir
classpath = sourceSets.myTests.runtimeClasspath + sourceSets.myTests.resources
}
【问题讨论】: