我尝试创建一个特殊的bean用于测试和使用特殊属性。
我有 application.yml
和 application-test.yml
文件:我只想保留第二个的测试属性。
我已经创建了一个特殊的测试配置文件,但是无法启动弹簧启动上下文,因为它在application.yml
中找不到相同的属性。
@TestConfiguration
@EnableConfigurationProperties(
TestProperties::class
)
class TestPropertiesConfiguration
@ConfigurationProperties("test")
data class TestProperties(
val property1: String,
val property2: String
)
application-test.yml:
test:
property1: value
property2: value
(Spring Boot期望在常规application.yml
文件中也有相同的属性(
是否可以完全具有一些特殊属性来进行测试?
在您的src/test/resources
目录中放置带有所需测试属性的application.yml
副本。
编辑:我现在意识到我有些误解了您的用户酶。例如,如果您想将应用程序部署到测试环境并需要为此配置您的应用程序。
您可以使用春季配置文件来实现此目标。该博客解释了您需要的一切:https://www.baeldung.com/spring-profiles如果您的配置文件设置为测试,则您的应用程序还应自动使用应用程序 - test.yml。如果在application.yml和application-test.yml中定义了属性,则应在application-test.yml