Spring6整合JUnit
大约 1 分钟
Spring 对 JUnit 单元测试也有着自己的支持,可以简化测试程序的编写。
Spring + JUnit4
添加依赖
<!--spring context依赖--> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId> <version>6.0.0-M2</version> </dependency> <!--spring对junit的⽀持相关依赖--> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-test</artifactId> <version>6.0.0-M2</version> </dependency> <!--junit4依赖:junit--> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.13.2</version> <scope>test</scope> </dependency>编写单元测试
// 指定测试运行器,是 JUnit 的注解 // SpringJUnit4ClassRunner 是 Spring 提供的整合JUnit的类 @RunWith(SpringJUnit4ClassRunner.class) // Spring配置文件路径,classpath: 表示类路径 // 也是Spring提供的 @ContextConfiguration("classpath:spring.xml") public class SpringJUnit4Test { // 从容器中自动注入,不用getBean了 @Autowired private User user; @Test public void testUser(){ // 直接在测试方法中使用即可 System.out.println(user.getName()); } }
Spring + JUnit5
引入依赖
<!--spring context依赖--> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId> <version>6.0.0-M2</version> </dependency> <!--spring对junit的⽀持相关依赖--> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-test</artifactId> <version>6.0.0-M2</version> </dependency> <!--junit5依赖:junit-jupiter--> <dependency> <groupId>org.junit.jupiter</groupId> <artifactId>junit-jupiter</artifactId> <version>5.9.0</version> <scope>test</scope> </dependency>编写单元测试
// JUnit5 使用 @ExtendWith 而不是 @RunWith // 其余配置一样 @ExtendWith(SpringExtension.class) @ContextConfiguration("classpath:spring.xml") public class SpringJUnit5Test { @Autowired private User user; @Test public void testUser(){ System.out.println(user.getName()); } }
