在哪里放置maven参数化junit输入xml文件

时间:2010-12-07 21:01:32

标签: java maven-2 junit

我已经参数化了junit测试,它从多个XML输入文件中读取。在代码中,我有这样的:

@Parameters
public static Collection<Object[]> getFiles() {
  Collection<Object[]> params = new ArrayList<Object[]>();
  for (File f : new File(".").listFiles(new someInputFileFilter())) {
    Object[] arr = new Object[] { f };
    params.add(arr);
  }
  return params;
}

在Maven下可能包含数百个这样的XML输入文件的推荐方法是什么?我把它放在哪里?我需要对POM和上面的源代码进行哪些更改才能读取这些XML文件?

1 个答案:

答案 0 :(得分:0)

将文件放在src/test/resources的某处,比如src/test/resources/xmlfiles;这将导致Maven自动将这些镜像到target/test-classes。然后你可以将它们作为described by James Lorenzen消费:

URL path = this.getClass().getResource("/xmlfiles");
File xmlfileDir = new File(url.getFile());
for (File f : xmlfileDir.listFiles(new ...Filter())) {
    ....
}

不需要更改POM。