【发布时间】:2019-12-07 12:50:17
【问题描述】:
目前我正在一个与 PubSub 交互的项目中工作,但我希望它也可以与 TestSupportBinderAutoConfiguration 一起使用(执行测试而不去 Google 检索凭据)。
spring.profiles.active= pubsub
spring.main.web-application-type=none
spring.cloud.stream.default-binder=test
spring.cloud.stream.bindings.output.destination= output-queue
spring.cloud.stream.bindings.input.destination= input-queue
默认情况下,与 Google 相关的所有 AutoConfiguration 类都包含在 @SpringBootApplication 的 exclude 属性中
但是我注意到,如果父 application.properties 属性有一些我想要覆盖的属性,应用程序类仍然使用那些而不是被覆盖的属性来实例化,这意味着我正在尝试使用 TestSupportBinder带有 PubSub 的类。
@RunWith(SpringJUnit4ClassRunner.class)
@SpringBootTest(classes = MyProcessor.class, webEnvironment = SpringBootTest.WebEnvironment.NONE)
@TestPropertySource(properties = {
"--spring.profiles.active="
})
有什么解决方法吗?这样主类就配置了新覆盖的属性,而不是从测试和主类的不同位置收集配置?
【问题讨论】:
标签: spring-boot spring-cloud spring-cloud-stream