Gradle + Spring 引导 - 如何在 "test" sourceSet 中的测试中读取 "itest" sourceSet 中的资源

Gradle + Spring Boot - how can I read resources in "itest" sourceSet in a test in "test" sourceSet

我在保存级别有 sourceSet itesttestmain

test sourceSet 中的测试中,我想读取 itest/resources 中的文本文件。这可能吗?

是的,我找到路了。

只需更改 sourceSet test 配置:修改 resources.srcDirs 以将另一个路径添加到值集。

build.gradle中:

sourceSets {
    test {
        output.resourcesDir = "build/resources/test" // copy test resources to build 
        resources.srcDirs = ['src/test/resources', 'src/itest/resources/fixtures/preAuthMock2']
        // to include example json from itest resources
    }
}

注意当你指定这个文件夹是你需要的文件的直接父目录时,当你用getResourceAsStream()读取文件时,你只需要/foo.json作为路径,而不是/fixtures/preAuthMock2/foo.json