Failed to replace DataSource with an embedded database for tests
错误提示 :
Caused by: java.lang.IllegalStateException: Failed to replace DataSource with an embedded database for tests. If you want an embedded database please put a supported one on the classpath or tune the replace attribute of @AutoConfigureTestDatabase.
这个错误大意是说:当前测试需要一个内存数据库作为DataSource但是没找见,如果你真想使用内存数据库,请指定一个正确的路径或者修改下最后那个注解的属性。
原因:在我的测试代码中,用了@DataJpaTest注解,一旦使用这个注解,系统会默认配置内存数据库作为DataSource,而我实际配置的是mysql,所以测试一直报错说找不到内存数据库。使用注解@AutoConfigureTestDatabase(replace = NONE)就能取消这个默认。
解决:
@AutoConfigureTestDatabase(replace = AutoConfigureTestDatabase.Replace.NONE)