目前,我正在一个与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
类都包含在exclude
的{{1}}属性中
但是我注意到,如果父@SpringBootApplication
属性具有我要覆盖的某些属性,则应用程序类仍将使用这些实例化,而不是被覆盖的那些实例化,这意味着我正在尝试将TestSupportBinder类与PubSub一起使用。
application.properties
有什么解决方法吗?以便为主类配置新覆盖的属性,而不是从测试和main中的不同位置收集配置?
答案 0 :(得分:0)
实际上,您是在描述集成(与Google)与单元测试(无Google)的比较。通常,我们将两者分开。例如,我们有一个单独的集成模块https://github.com/spring-cloud/spring-cloud-stream/tree/master/spring-cloud-stream-integration-tests,Rabbit和Kafka本身也位于单独的模块中,以进行自己的集成测试。