我有src / main / test / resources / application-test.yml,根据SpringBootTest,它将加载application.yml,然后加载application-test.yml。但是我遇到一种情况,我只想对一个测试覆盖application-test.yml中的某些属性,而其他测试则需要使用application-test.yml中的属性。我该怎么做?
我尝试使用@TestPropertySource批注进行覆盖,但无法正常工作。
@Slf4j
@RunWith(SpringRunner.class)
@SpringBootTest(classes= MyApplicationTestApplication.class)
@ActiveProfiles("test")
@DirtiesContext
@TestPropertySource(locations = {"classpath:application-test.yml",
"classpath:file-test.properties"})
答案 0 :(得分:1)
再创建一个配置文件并同时激活它们(订单事项)@ActiveProfiles({"test", "test-override"})
或者您可以在Spring上下文开始加载自身之前,仅在静态块中使用System.properties进行覆盖。
答案 1 :(得分:0)