spring boot 若是在测试类中使用ioc注入bean时,需在测试类中使用@RunWith(SpringRunner.class)

原因:
若是不使用@RunWith(SpringRunner.class),则会出现注入的bean为空。如下图中的activeMQUtil变量指向会为空,也就是注入失败(前提保证ActiveMQUtil已经在ioc容器中实例化)。
在这里插入图片描述
扩展:
@RunWith就是一个运行容器
@RunWith(JUnit4.class)就是指用JUnit4来运行
@RunWith(SpringRunner.class)意思就是指定SpringRunner来运行。

我对@RunWith(SpringRunner.class)通俗理解是,让测试在项目的主函数中Spring容器环境下执行,也就是说@RunWith(SpringRunner.class)加在测试类相当于启动了测试类所在springboot项目。

原创文章 59 获赞 21 访问量 2万+

猜你喜欢

转载自blog.csdn.net/weixin_44185736/article/details/106002019