开发中遇到的问题

使用spring的单元测试,依赖注入时报空指针(即依赖注入失败)
我在依赖注入上打了断点它也进不去,仔细检查了是不是启动类没有放在相应的包下面,配置类没有加@Configuration或者@component注解之类。发现这些都是注意到了的。当时就感觉好玄学,这个程序像见/闹鬼了一样。后面静下来想了一下,使用了springboot的脚手架(即 使用 spring initializr 构建项目)新建了一个demo,把代码拿过来测试,竟然成功。仔细比对,发现原来是@Test测试类导的jar包不正确,导致了他没有把spring的bean注入到spring容器中.后面去官网看了一下:发现spring boot 2.2 之前使用的是 Junit4 而后续的使用的是Junit5,导致缺少包。(我用的maven创建的项目,它默认添加的依赖是junit4,springboot的版本是2.2.2,所以单元测试时导入的就是junit4的jar)

  • import org.junit.Test; 2.2以前的版本
  • import org.junit.jupiter.api.Test; 2.2以后的版本

总结:
在开发过程中,我们总是会遇到一些稀奇古怪的问题,然后我们总是会去抱怨,说是开发工具的问题,更多的说为什么同样的代码在他的机器上能跑,在我的机器上就不能跑?就感觉很玄学,像是见了鬼一样,但其实本质的原因是由于知识的匮乏,对于一些框架,它们的变化,软件的更新,产生的变化,我们没有及时关注到,没有及时了解到,还有一些原理,我们不太懂,所以导致出现问题,我们就找借口去抱怨。而没有认真的去寻找答案,开发没有玄学,出现了奇怪的bug全是自己代码的问题,这时候应该静下心来好好想想是哪出了问题,好好看看自己的代码,觉得有可疑的地方去进行调试,而不是一味的抱怨

参考链接–Spring Boot 2.2.x Junit4 升级为Junit5 后的变化、对比 找不到 org.junit.jupiter.api.Test—依赖注入报空指针

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值