Java 在测试中,如何打开资源目录中的文件?

Java 在测试中,如何打开资源目录中的文件?,java,unit-testing,Java,Unit Testing,我正在做单元测试,为此我需要从excel文件中读取数据。这些文件位于文件夹中:module/test/resource/click/T001.xlsx 测试类位于目录module/test/java/validation/readers/spreadsheets/PlanilhaReaderTest.java中,I类测试位于src/main/java/validation/readers/spreadsheets/PlanilhaReader.java 如何打开文件所在的目录(../test/r

我正在做单元测试,为此我需要从excel文件中读取数据。这些文件位于文件夹中:
module/test/resource/click/T001.xlsx

测试类位于目录
module/test/java/validation/readers/spreadsheets/PlanilhaReaderTest.java
中,I类测试位于
src/main/java/validation/readers/spreadsheets/PlanilhaReader.java

如何打开文件所在的目录(../test/resource)

我的测试

@Test(expected = InternalServerErrorException.class)
    public void testReadMetadados_invalidPlanilha_invalidFormat() throws Exception {
        oknok.validacao.entities.Planilha planilha = new Planilha().setPath(String.valueOf(PlanilhaReader.class.getClass().getResource("/click/T001.xlsx")));
        Log.info(this, "Path: " + planilha.getPath());
        planilhaReader.readMetadados(planilha);
    }
输出

路径:file:/home/daniela.morais/Development/git/myProject/myModule/target/test classes/click/T001.xlsx

您正在使用Eclipse吗?使用上下文菜单使模块/测试/资源文件夹成为构建路径的一部分(…作为源文件夹)。然后,此文件夹中的所有内容都将自动复制到目标/测试类中,并且应该可以找到。我使用intelliJDon时没有在此处安装IntelliJ。你能检查一下吗?在屏幕截图的绿色部分,在“测试源文件夹中,你的/module/Test/resource也必须是。这解决了我的问题,只需要使用目录路径:
oknok.validacao.entities.Planilha Planilha=new Planilha().setPath(PlanilhaReader.class.getClass().getResource(“/click/T001.xlsx”).getPath());