SpringBoot中单元测试的细节注意项
1、引入junit4.X
引入junit4.x的maven依赖
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.13.1</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<version>2.4.0</version>
<scope>test</scope>
</dependency>
二话不说,看代码
与主启动类同包路径时有四点注意事项
与主启动类同包路径
测试类用public修饰
测试方法用public修饰
测试类上加上Runwith注解配置SpringRunner.class属性(否则依赖注入的bean会报空指针)
如果与主启动类不同包时,可以在测试类的SpringBootTest上加入主启动类的类名,标识容器路径,否则依赖注入的bean会报空指针
2、引入junit5.X
由于日常时间用junit5.x比较多,所以IDEA自动配置了junit5.x的依赖到类路径下
这时候需要注意的点有
Junit4.x带的Runwith需要从代码中去除掉
测试类和测试方法可以都不用public修饰
如果与主启动类不同包时,可以在测试类的SpringBootTest上加入主启动类的类名,标识容器路径,否则依赖注入的bean会报空指针
如图所示