【发布时间】:2017-02-07 19:15:47
【问题描述】:
我正在尝试使用 Spring 创建单元测试。
测试类:
@RunWith(SpringRunner.class)
@SpringBootTest(classes = {MyConfig.class})
public class MyTest{
@Test
public void ...
}
要加载的类:
@ConfigurationProperties()
@PropertySource("config/myConfig.properties")
@Component
public class MyConfig {}
例外:
原因:org.springframework.beans.factory.BeanDefinitionStoreException:失败 解析配置类 [de.db.sus.converter.fia.business.algorithm.config.FiaConverterConfig]; 嵌套异常是 java.io.FileNotFoundException: 无法打开 ServletContext 资源 [/config/myConfig.properties]
我找到了用于 Web 应用程序和/或基于 xml 的配置的资源,但不适用于传输它们。
如果我用@SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT)启动应用程序,属性就会被加载。但是我不能为每个单元测试启动整个应用程序。
我已经验证该文件存在于目录test/resources/config/中
【问题讨论】:
标签: java spring unit-testing