上次说了几个使用DI为前提的情况下的测试速度优化方案。这里想再总结下怎么通过不使用DI(Standalone模式)去进行测试。 然后这次总结的主要是Repository层面的Standalone模式的测试。需要实现Standalone模式,主要需要解决这么几个问题: 创建DataSource 创建EntityManager 创建DSLContext(如果使用了jooq) 实例化JpaRepository 创建DataSource可以参考下面这段代码,当然最好这些property可以从spring的配置文件里读取。 创建EntityManager的话,主要有两种方式,一种是带transacation的: 还有一种是不带transacation的: DSLContext的话,像下面这种方法比较简单: 最后,如果你使用了JpaRepository,那么就需要对它实例化才能使用: 在我的项目中,因为还使用了Customize的JpaRepository,所以这里还有另外一种写法: