gpt4 book ai didi

java - 具有集成测试的公共(public)库中的 Flyway

转载 作者:行者123 更新时间:2023-12-02 01:23:11 25 4
gpt4 key购买 nike

我遇到了一个愚蠢的情况,我在公共(public)库的 pom 文件中定义了 Flyway 依赖项。这个通用库恰好有加载上下文的 Spring Boot 集成测试,因此当这些集成测试运行时我得到

java.lang.IllegalStateException: Cannot find migrations location in: [classpath:db/migration] (please add migrations or check your Flyway configuration)

我不想在所有应用程序的 pom 中重复依赖项定义,并且我无法删除集成测试。我也不想有一个虚拟的迁移文件夹。我可以在集成测试中以某种方式关闭它吗?

@SpringBootTest
@RunWith(SpringRunner.class)
@ActiveProfiles("test")
@DisableFlywaySomehow
public class MyITest {...}

最佳答案

使用不同的配置文件(尽管您也可以使用当前的测试配置文件)并只需设置spring.flyway.enabled = false您的 application.{properties,yml} 文件。

您还可以在逐个测试用例上使用 @TestPropertySource 注释。

关于java - 具有集成测试的公共(public)库中的 Flyway,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57332186/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com