【发布时间】:2012-03-26 19:47:09
【问题描述】:
有没有办法在 Eclipse(特别是我使用 SpringJUnit4ClassRunner)中获取 JUnit 测试以使用来自 src/main/resources 和 src/test/resources 的资源?
Maven 的 surefire 插件可以做到这一点,但从 Eclipse 运行一个特定的单元测试却没有。
我在src/main/resources/spring-config/ 中有大量 Spring 配置,我想“覆盖”两个特定文件。我已经将这些特定于测试的覆盖放在src/test/resources/spring-config/ 中,并且当通过 Maven 运行单元测试时,一切都可以正常工作。当我从 Eclipse 运行 JUnit 测试时,只有测试文件可用,毫无疑问我的上下文无法加载。
更新
当使用通配符时,配置测试上下文的 Spring 类似乎无法从 src/main/resources/ 中找到资源,但如果我明确指定它们,会找到它们。
找不到来自src/main/resources/的东西
@ContextConfiguration(locations = {"classpath:/spring-config/*.xml"})
是否从src/main/resources/找到指定文件
@ContextConfiguration(locations = {"classpath:/spring-config/*.xml",
"classpath:/spring-config/app-aws.xml"})
【问题讨论】:
-
只是向任何想回答这个问题的人指出,“有没有办法让 Eclipse/Maven 中的 JUnit 测试使用来自
src/main/resources和src/test/resources的资源?” (并且对 Spring 部分不太感兴趣),请参阅 this answer 了解如何在 Maven 中执行此操作,或者只需在 Eclipse 中的运行配置中添加一个文件夹。
标签: eclipse spring unit-testing maven junit