title: Enabling test configuration and overriding config in Spring Boot application
body: <p>Currently I'm working in a project which interacts with PubSub but I want it to also work with <code>TestSupportBinderAutoConfiguration</code> (executing tests without going to Google to retrieve the credentials).</p>
  
  <pre><code>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
  </code></pre>
  
  <p>By default, all the <code>AutoConfiguration</code> classes related to Google are included within the <code>exclude</code> property in <code>@SpringBootApplication</code></p>
  
  <p>However I've noticed that if the parent <code>application.properties</code> properties has some of the properties that I want to override, the application classes are still instantiated with those instead of the overriden ones, meaning that I'm trying to use TestSupportBinder classes with PubSub ones.</p>
  
  <pre><code>@RunWith(SpringJUnit4ClassRunner.class)
  @SpringBootTest(classes = MyProcessor.class, webEnvironment = SpringBootTest.WebEnvironment.NONE)
  @TestPropertySource(properties = {
      "--spring.profiles.active="
  })
  </code></pre>
  
  <p>Is there any workaround for this? So that the main classes are configured with the newly overriden properties instead of gathering configs from different places in tests and main?</p>