我正在使用@TestPropertySource覆盖我的集成测试中的application.yml属性,以用于Spring启动应用程序.
@TestPropertySource(properties = { "repository.file.path=src/test/resources/x" })
我想知道是否有某种方法可以使属性VALUE动态化.像这样的东西:
@TestPropertySource(properties = { "repository.file.path=PropertyValueProvider.class" })
最佳答案
@TestPropertySource仅提供用于配置PropertySources的声明性机制. Spring参考手册中的Documentation.
如果您需要编程支持将PropertySource添加到Environment,您应该实现一个ApplicationContextInitializer,它可以通过@ContextConfiguration(initializers = …)注册. “春季参考手册”中的Documentation.
问候,
Sam(Spring TestContext Framework的作者)