zoukankan      html  css  js  c++  java
  • springboot @Test单元测试获取注入的bean对象

    1.情景展示

      在springboot项目中,写了测试方法

      运行该方法,通过注解注入的对象,却获取不到

     

    2.原因分析

      起初,我以为拿不到这个对象,是因为该类没有注入到spring容器中,所以,拿不到。(普通情况下,原因就是如此,但Junit不是因为这)。

      将该类注入到spring中,同样无效。

    3.解决方案

      我们需要在类上添加以下代码:

    @RunWith(SpringRunner.class)
    @SpringBootTest(classes = {项目启动类.class})
    

      这次,就能拿到对象啦。 

      我们会发现:

      通过这种方式,在运行@Test之前,会启动这个项目,然后对象才会被注入到单元测试所在类中。

      并且,这个项目的生命周期为@Test的运行时长;

      另外,这个项目的运行和本身项目的运行没有冲突,可以共同启动,互不影响(可以理解为两个不同的进程)。

      这可能与它们的执行器有关

    写在最后

      哪位大佬如若发现文章存在纰漏之处或需要补充更多内容,欢迎留言!!!

     相关推荐:

  • 相关阅读:
    面试常考知识点——Java(JVM,JDK,JRE)
    使用CSS transform属性的skewX、skewY沿X、Y轴倾斜元素
    视觉设计应用
    小程序
    小程序获取用户的登录头像和用户名
    整站建设
    2018-05-05(在小程序中使用图标)
    2018-05-03(PHP)
    webpack
    简历
  • 原文地址:https://www.cnblogs.com/Marydon20170307/p/14216817.html
Copyright © 2011-2022 走看看