之前提过 #4624. 询问 mybatis, 他们是支持的, 详见: https://github.com/mybatis/spring-boot-starter/issues/681

当前使用版本(必填,否则不予处理)

mybatis-plus: 3.5.2 spring-boot: 2.5.14

该问题是如何引起的?(确定最新版也有问题再提!!!)

@MybatisPlusTest 注解没有引入 DataSourceAutoConfiguration (自动创建 Datasource) 和 SqlInitializationAutoConfiguration (自动加载schema.sql) 配置.

重现步骤(如果有就写完整)

  1. 使用 @MybatisPlusTest 创建测试类
  2. 在 src/test/resources 目录下创建 schema.sql
  3. 测试代码有表操作时报 Table "XXX" not found (this database is empty); SQL statement: ...

也可以删除 mybatis-plus-boot-starter-test/src/test/resources/application.yml 中的 spring.datasource.schema: classpath:schema.sql: classpath:schema.sql, 运行单元测试 com.baomidou.mybatisplus.test.autoconfigure.MybatisPlusSampleTest, 也会报相同的错误.

在使用类似的测试注解 @JdbcTest, @DataJdbcTest 和 @DataJpaTest 时都能够默认加载 schema.sql

报错信息

Table "XXX" not found (this database is empty); SQL statement: ...

Comment From: miemieYaho

使用 3.5.2.3-SNAPSHOT

Comment From: fishautumn

使用 3.5.2.3-SNAPSHOT

这个版本测试能够正常加载 schema.sql