运行 @DataJpaTest Junit 时,正在使用资源和测试资源文件夹中的两个 data.sql 文件

Posted

技术标签:

【中文标题】运行 @DataJpaTest Junit 时,正在使用资源和测试资源文件夹中的两个 data.sql 文件【英文标题】:Both data.sql file is being used from resources and test resources folder when a @DataJpaTest Junit is being run 【发布时间】:2019-01-05 15:04:52 【问题描述】:

在运行带注释的 @DataJpaTest Junit 时,正在使用资源和测试资源文件夹中的 data.sql 文件。

当执行带有@DataJpaTest 注释的Junit 测试时,如何告诉spring boot 只使用测试资源文件夹中的data.sql?

谢谢。

【问题讨论】:

请提供您的单元测试 【参考方案1】:

尝试:

@Sql(scripts="classpath:data.sql")

【讨论】:

【参考方案2】:
@shodz... try this.

    @SqlGroup(
        @Sql(executionPhase = Sql.ExecutionPhase.BEFORE_TEST_METHOD, scripts = "classpath:beforeTestRun.sql"),
        @Sql(executionPhase = Sql.ExecutionPhase.AFTER_TEST_METHOD, scripts = "classpath:afterTestRun.sql")

              )

【讨论】:

谢谢。我会试试这个。

以上是关于运行 @DataJpaTest Junit 时,正在使用资源和测试资源文件夹中的两个 data.sql 文件的主要内容,如果未能解决你的问题,请参考以下文章

在 JUnit 5 中使用 @TestContainers 实现 @DataJpaTest

使用 @DataJpaTest 设置自定义方案

如何将 Testcontainers 与 @DataJpaTest 结合使用以避免代码重复?

在 DataJPATest 下运行单元测试时出现问题

如何在使用 DataJpaTest 的 Spring Boot 2.0 测试中访问 H2 控制台

使用 Eureka / Feign 时 @DataJpaTest 失败