【发布时间】:2018-08-27 02:48:53
【问题描述】:
这是我的项目结构
src/main/java
/main/ApplicationContext.java
src/main/resource/
/application-context.xml
/conf/soap.properties
src/test/java
/main/TestApplicationContext.java
src/test/resource/
/application-context-test.xml
/confTest/soapTest.properties
然后TestApplicationContext.java
@SpringBootApplication
@ImportResource("classpath:application-context-test.xml")
@ActiveProfiles("test")
public class TestApplicationContext {
public static void main(String[] args) {
SpringApplication.run(TestApplicationContext.class, args);
}
}
以及我如何加载特定于 Junit 测试的属性
@ActiveProfiles("test")
@SpringBootTest
@ContextConfiguration(classes = {TestApplicationContext.class})
@AutoConfigureWireMock(port = 8081, httpsPort = 443)
@TestPropertySource(locations = {"classpath:confTest/soapTest.properties"})
@RunWith(SpringJUnit4ClassRunner.class)
public class ApplicationTest {
@Test
void testABC(){
//test here
}
}
但似乎confTest/soapTest.properties文件中的属性无法在运行时加载
它显示消息
Could not resolve placeholder 'service.test.url' in value "${service.test.url}"
事实上service.test.url 在soapTest.properties 中可用
我知道这可能是重复的问题,但我已经用谷歌搜索并尝试了许多解决方案,但对我不起作用
我的配置有问题吗
【问题讨论】:
标签: spring-boot junit