Testing 如何使用Gradle在测试中获取资源?

Testing 如何使用Gradle在测试中获取资源?,testing,resources,gradle,spock,Testing,Resources,Gradle,Spock,我有: 在测试目录中,我有Spock测试。如何引用test.zip文件以便将其绝对路径传递给测试并检查我的一些方法?我尝试了新文件('.')。absolutePath但我想找到更好的解决方案 --src -----main -----test --------resources -------------test.zip 您可以尝试基于ClassLoader#getResource查找zip文件,或者配置test任务以设置指向zip文件的系统属性。后者更容易实现,但更难在Gradle以外的环境

我有:

在测试目录中,我有Spock测试。如何引用test.zip文件以便将其绝对路径传递给测试并检查我的一些方法?我尝试了新文件('.')。absolutePath但我想找到更好的解决方案

--src
-----main
-----test
--------resources
-------------test.zip

您可以尝试基于
ClassLoader#getResource
查找zip文件,或者配置
test
任务以设置指向zip文件的系统属性。后者更容易实现,但更难在Gradle以外的环境中工作(例如,在IDE中运行测试时)

PS:在Spock
expect:
then:
块中,您可以(也应该)省略
assert
关键字

def "check checkTypeZipMethod"() {
        expect:
        assert testedMethod(new File('.').absolutePath+"test/resources/test.zip")==true

}