在另一个项目中重用资源和上下文

时间:2014-04-07 16:42:16

标签: spring junit spring-test spring-test-mvc

我有一个项目如下:

Project
    Project-A/
        src/test/java/
            someTests.java
        src/test/resources
            database/
                create.sql
                insert.sql
            spring/
                test-config.xml
    project-B/
        src/test/java
            otherTests.java
Project-B的

pom.xml

<dependency>
    <groupId>${project.groupId}</groupId>
    <artifactId>Project-A</artifactId>
</dependency>

someTests.java 中,我的配置是:

@RunWith(SpringJUnit4ClassRunner.class)
@WebAppConfiguration
@ContextConfiguration(locations = { "file:src/main/webapp/WEB-INF/spring/webapp-config.xml", "classpath:spring/test-dao-config.xml" })
public class DacsDAOImplTest

我想在 otherTests.java中重用 test-config.xml create.sql insert.sql

我已经尝试过otherTests.java

@ContextConfiguration(locations = {"classpath*:spring/test-dao-config.xml"})

但这似乎不起作用......

编辑:Geoand的回答帮助,我没有更多与bean相关的异常,但现在我有了

  

FileNotFoundException:类路径资源   [exception-messages.properties]无法打开,因为它没有   存在。

由于我不明白究竟做了什么改变,我不知道如何解决这个问题...... 异常消息在 webapp-config.xml 中用作<context:property-placeholder location="classpath:exception-messages.properties" />

1 个答案:

答案 0 :(得分:1)

我认为问题在于,虽然您将Project-A导入到Project-B中,但Maven并未包含测试代码。查看this SO问题中的解决方案,了解它是否有帮助

修改

一旦你想要导入测试代码,你需要在/ test / resources下创建包含你在应用程序中使用的属性的测试值的.properties文件