我编写了一个单元测试,其中引用了位于src/ test /resources中的一个文件。代码如下所示:
private static final String TEST_FILE = MyClass.class.getResource("").getPath() + "myfile.properties";当我在eclipse中用普通的JUnit运行器运行这个测试时,一切都很好。但是,当我使用ECL Emma运行此测试时,测试失败。
经过一些调查,我发现执行目录是不同的。ECL Emma有自己的输出文件夹,它在其中复制所有需要的资源,然后运行测试。但它不会复制我的测试文件。我不知道该怎么解决这个问题。我希望有人能帮助我。
发布于 2011-04-07 17:25:24
您可以使用就地插装,如下所述:
http://www.eclemma.org/userdoc/launching.html
Emma不会影响类路径/复制类文件。
另一种方法是将资源放在单独的资源文件夹中(而不是src/中),然后将该文件夹添加到类路径中。
也许以InputStream的形式检索文件会更好:
InputStream inStream = MyClass.class.getResourceAsStream("/myfile.properties");https://stackoverflow.com/questions/5568235
复制相似问题