Java Spring Boot在Citrust TestNG测试期间未加载特定于测试的应用程序属性

Java Spring Boot在Citrust TestNG测试期间未加载特定于测试的应用程序属性,java,spring,spring-boot,testng,citrus-framework,Java,Spring,Spring Boot,Testng,Citrus Framework,我试图让Spring Boot在运行我的Citrus集成测试时自动加载src/test/resources/application.properties文件,而不是src/main/resources/application.properties文件。这些属性在测试期间可用,但它们不会覆盖主Spring引导应用程序中使用的主要属性 以下是我目前的配置: src/main/java/EventPublisher.java @springboot应用程序 @组件扫描 @启用自动配置 公共类事件发布者

我试图让Spring Boot在运行我的Citrus集成测试时自动加载
src/test/resources/application.properties
文件,而不是
src/main/resources/application.properties
文件。这些属性在测试期间可用,但它们不会覆盖主Spring引导应用程序中使用的主要属性

以下是我目前的配置:

src/main/java/EventPublisher.java

@springboot应用程序
@组件扫描
@启用自动配置
公共类事件发布者{
公共静态void main(字符串[]args){
run(EventPublisher.class,args);
}
}
src/main/resources/application.properties

consumer.to=stream:out
citrus.rest.server.port=7913
consumer.to=localhost:${citrus.rest.server.port}/consumer
src/test/java/EndpointConfig.java

@配置
@PropertySource(“类路径:application.properties”)
@春靴测试
公共类EndpointConfig{
...
src/test/java/CitrusTestsIT.java

@测试
@春靴测试
公共类AutomatedIT扩展了TestNgCitrustStrunner{
...
src/test/resources/application.properties

consumer.to=stream:out
citrus.rest.server.port=7913
consumer.to=localhost:${citrus.rest.server.port}/consumer
pom.xml spring片段


org.springframework.boot
spring启动依赖项
${spring boot.version}
聚甲醛
进口
org.springframework.boot
弹簧起动试验
测验
我假设存在注释或文件结构问题,但到目前为止,我还没有弄清楚这个问题是什么

更新

在将文件重命名为
application test.properties
并更改
pom.xml
中的
spring boot
插件后,我从
src/main/resources
获取了要加载的测试属性:


org.springframework.boot
springbootmaven插件
${spring boot.version}
重新包装
预集成测试
开始
符合事实的
测验
整合后测试
停止
通过在POM中将概要文件设置为
test
,现在Spring Boot加载测试属性


这似乎不是正确的方法,而且这也将
应用程序测试.properties
文件的使用限制在主Spring Boot应用程序上,而不是测试包上。

您调用的两个文件完全相同,
应用程序.properties
。这意味着只有一个文件将读取最高优先级;在本例中,它是
src/test
中的优先级。相反,使用Spring的配置文件功能将覆盖文件重命名为
src/test/resources/application test.properties
,这将允许引导查看这两个文件并应用所需的覆盖逻辑。

我添加了
@ActiveProfiles(“test”)
src/test/java/CitrusTestsIT.java
并将
src/test/resources
中的属性文件重命名为
application test.properties
。日志显示配置文件已设置为test,但未使用任何测试属性。我认为
test
配置文件通常应自动添加。请检查您的缺点ole日志,它将告诉您正在使用哪些配置文件(以及哪些属性源)。如果我没有包含注释,我会在日志中看到:
没有活动配置文件集,返回默认配置文件:default
。我设法从
src/main/resources
文件夹中加载
应用程序测试.properties
文件。请参阅我的更新。