之前提过 #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) 配置.
重现步骤(如果有就写完整)
- 使用 @MybatisPlusTest 创建测试类
- 在 src/test/resources 目录下创建 schema.sql
- 测试代码有表操作时报 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