Spring Boot集成测试会覆盖自定义.properties文件

时间:2018-07-01 14:03:32

标签: java spring spring-boot spring-test spring-boot-test

我正在实施集成测试,并且在覆盖应用程序使用的自定义属性时遇到问题。

集成测试样本:

@RunWith(SpringRunner.class)
@SpringBootTest(
    classes = Application.class,
    webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT
)
@TestPropertySource(locations = "classpath:test.properties")
public abstract class BaseIntegrationTest {

    @Autowired
  protected TestRestTemplate restClient;

@TestPropertySource(locations = "classpath:test.properties")将使用提供的应用程序覆盖我的应用程序的application.properties

但是,我的应用程序使用这样的自定义属性文件:

@Configuration
@PropertySource("classpath:fileProvider/custom.properties")
@ConfigurationProperties(prefix = "com.sample.config")
public class SampleProviderConfigProperties {

在我的应用程序中,有许多外部提供程序。他们每个人都像SampleProviderConfigProperties一样拥有自己的配置

在集成测试中,我想用测试系统的配置替换提供者custom.properties

有什么办法可以实现?

0 个答案:

没有答案