做项目时在使用SpringBoot单元测试检测mapper时, 发现自动注入报了空指针异常。
查找资料后发现与SpringBoot版本和Junit版本有关:
SpringBoot 2.2.x依赖下之前,是Junit4,之后是Junit5,两者的包不同:
// Junit4
import org.junit.Test;
// Junit5
import org.junit.jupiter.api.Test;
而我做的项目正巧是 2.1.5 的远古版本,Junit4的使用在测试类除了添加@SpringBootTest注解外,还需要添加@@RunWith(SpringRunner.class)。
如果是使用 Junit5 ,只添加@SpringBootTest即可。
其实直接换pom文件里SpringBoot父工程的依赖版本就行,属于是最简单的方法。