我在Spring Boot应用程序中引入了配置文件,并将一些属性从application.properties移到了application-puppet.properties。这在运行应用程序时工作正常,但在测试时则不行。
将此添加到application.properties文件:
spring.profiles.active=puppet
将一个属性从application.properties移到application-puppet.properties
person.fileName=person.txt
然后我将@ActiveProfiles添加到抽象测试类:
@ContextConfiguration(classes = AbstractElasticsearchSpringContextTests.EsConfig.class)
@ActiveProfiles("puppet")
public abstract class AbstractElasticsearchSpringContextTests extends AbstractTestNGSpringContextTests {
...
但我收到这样的错误: 嵌套异常是java.lang.IllegalArgumentException:无法解析占位符' person.fileName'在字符串值" $ {person.fileName}"
答案 0 :(得分:-1)
您可以在ContextConfiguration批注中将SpringBootContextLoader添加为加载器:
@ContextConfiguration(classes = {AbstractElasticsearchSpringContextTests.EsConfig.class}, loader = SpringBootContextLoader.class)
,它将处理您的活动配置文件属性文件。