以下是我的测试类中的注释配置。
@RunWith(SpringJUnit4ClassRunner.class)
@TestPropertySource("classpath:jdbc.properties")
@ContextConfiguration({"classpath:applicationContext.xml","classpath:mvc-dispatcher-servlet.xml"})
@WebAppConfiguration
applictionCotnext.xml
包括jpa-context.xml
,数据库配置在jpa-context.xml
,数据源由jdbc.properties
配置。
当我运行测试方法时,无法打开由jdbc.properties中的所有值引起的连接为null。
然后我在同一个测试类中添加一个访问属性的方法。
@Inject
private ApplicationContext context;
@Test
public void accessProperties(){
MutablePropertySources sources = ((ConfigurableApplicationContext) context)
.getEnvironment().getPropertySources();
System.out.println("jdbcUrl=="+sources.iterator().next().getProperty("jdbcUrl"));
}
我获得了jdbc
Url的成功。怎么了?
答案 0 :(得分:1)
如果您使用的是Apache Maven,则需要将属性文件放在src / test / resources中。那应该拿起你的房产。