spring单元测试不能正常测试的几种情况解决方法
1.spting单元测试报java.lang.IllegalStateException: Unable to find a @SpringBootConfiguration, you need to use @ContextConfiguration or @SpringBootTest(classes=...) with your test
一般解决方案是你的测试类没有在启动类同级目录下或者下级目录,就像我们写控制层等都是将启动类写在他们的外层
2.上面的情况我是只加了@SpringBootTest,那有时候只加这个会报空指针异常 java.lang.NullPointerException。因为加错Test包了。你可能加成了这个 org.junit.Test 。想正常需要加入这个Test包 org.junit.jupiter.api.Test。
如果加了 org.junit.Test 需要加入注解 @RunWith(SpringRunner.class)
3.还有一些单元测试报错的情况是 加入了 websocket,由于websocket需要tomcat来暴露端口,但是@Test没有独立的servlet,
这时候只要加入@SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT) 就可以正常测试了
想看更多精彩内容,可以关注我的CSDN