Java Springboot-application-integration.properties在src/main/resources下工作,但不在src/test/resources下工作
关于应用于Springboot的Spring配置文件(集成)的小问题 目前,在src/main/resources下,我有几个application.properties文件。 例如:Java Springboot-application-integration.properties在src/main/resources下工作,但不在src/test/resources下工作,java,spring-boot,spring-boot-test,application.properties,Java,Spring Boot,Spring Boot Test,Application.properties,关于应用于Springboot的Spring配置文件(集成)的小问题 目前,在src/main/resources下,我有几个application.properties文件。 例如: 应用程序属性 应用程序本地属性 应用程序-生产属性 应用程序集成.prorperties 在src/test/resources下,没有属性文件 当我运行maven时,maven将触发一些单元和集成测试。单元测试不需要任何特定的概要文件(属性是在单元测试中设置的,无论如何,这不是问题) 集成测试需要appli
- 应用程序属性
- 应用程序本地属性
- 应用程序-生产属性
- 应用程序集成.prorperties
谢谢您可以使用以下配置进行集成测试
@TestPropertySource(locations = "classpath:application-integration.properties")
@ActiveProfiles("integration")
Spring Boot对src/test/resources或src/main/resources一无所知。它使用类路径加载文件。构建系统或IDE的任务是确保src/main/resources或src/test/resources中的文件位于类路径上,并且在这种情况下似乎不会发生这种情况。可能的原因取决于您使用的构建系统或IDE,以及您运行测试的方式。我目前正在与Maven合作,这是Jenkins工作的一部分,不涉及IDE。有没有一种方法可以简单地告诉“嘿,当您运行集成测试时,请查看/src/test/resources下的application-integration.properties”?您的问题不是很清楚。我建议您提供一个代码片段,使您的问题更加精确。无论如何,如果您只想在组件的属性中注入值,那么在这种测试中不需要spring上下文,让我们假设您有一个服务类@service public class MyService{@Value(${my.super.property}”)String属性;public String doSomething(){return property;}}您想编写测试(比如说单元测试),并想在属性字段中注入一个值。您可以使用Hello soung,我相信我的问题已经很清楚了,Sri已经提供了正确的答案