以上是Spring框架的前期准备工作,完成TestContext的属性的配置,那么接下来Spring真正实现上下文加载是在重写了Junit4 中BlockJUnit4ClassRunner的methodBlock方法。

  然后实现依赖注入等相关操作

  总结:
  Spring的基于注解的单元测试确实方便了我们的测试和开发啊,我们在不启动web容器的时候,可以对我们的Service层代码进行单元测试,具体Spring的单元测试还有很多的高级用法,大家有兴趣可以看下,比如@TestExecutionListeners:这个用于指定在测试类执行之前,可以做的一些动作,如这里的DependencyInjectionTestExecutionListener.class,可以对一测试类中的依赖进行注入,TransactionalTestExecutionListener.class用于对事务进行管理;这两个都是Srping自带的;我们也可以实现自己的Listener类来完成我们自己的操作,只需要继续类org.springframework.test.context.support.AbstractTestExecutionListener可以了