@RunWith(SpringJUnit4ClassRunner.class)使用

概述

对于集成Spring的Java程序,想写相关的单元测试,可以用到它:

@RunWith(SpringJUnit4ClassRunner.class)

作用:
使用junit写单元测试时,方便从Spring容器中取得对象。

一般还会结合下面的内容使用,指定Spring xml配置文件,例子如下:

@ContextConfiguration(locations = (“/test/appContext.xml”)) 或者 @ContextConfiguration(locations ={“classpath:/test/appContext.xml”})

配置

如果是maven项目,需要在pom.xml文件中添加依赖,例子如下:

  1. <dependency>
  2. <groupId>org.springframework</groupId>
  3. <artifactId>spring-test</artifactId>
  4. <version>4.3.21.RELEASE</version>
  5. <scope>test</scope>
  6. </dependency>
  7. <dependency>
  8. <groupId>junit</groupId>
  9. <artifactId>junit</artifactId>
  10. <version>4.12</version>
  11. <scope>test</scope>
  12. </dependency>

注意:
因为我使用的是4.3.21.RELEASE的版本,如果junit对应的版本低于4.12,就会报下面的错误信息,所以我这边配置的是4.12的版本。

Caused by: java.lang.IllegalStateException: SpringJUnit4ClassRunner requires JUnit 4.12 or higher. at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.(SpringJUnit4ClassRunner.java:102) … 14 more