• Springboot单元测试调用Service或Dao方法出现空指针异常


    在正常单元测试中,我们向方法上添加@Test注解即可,但是在springboot中我们要使用类似控制器注入方法

    @Autowired
        userService userService;

    又或者注入Dao层方法

     @Autowired
        private YiSouMapper yiSouMapper;
    

      这种自动装配的类就可能会注入失败,报空指针异常,就是userService或yiSouMapper无法被注入,

           那么springboot就给了我们一个将junit与springboot结合起来的依赖

     <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-test</artifactId>
                <scope>test</scope>
                <exclusions>
                    <exclusion>
                        <groupId>org.junit.vintage</groupId>
                        <artifactId>junit-vintage-engine</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>
    

      导入这个依赖以后我们在我们的测试类上添加@RunWith和@SpringBootTest两个注解,记住@SpringBootTes中的classes就是你自己springboot的启动类,

           名字需要换一下。这时运行后会启动项目环境,使用当前Spring环境进行单元测试。

    @RunWith(SpringRunner.class)
    @SpringBootTest(classes = EdApplication.class)
    public class FenCiUtilText {
        @Autowired
        private YiSouMapper yiSouMapper;
        @Test
        public void testDemo1() {
                //代码
        }
    }
    

      

  • 相关阅读:
    迷宫
    小猫
    数位DP模板
    摘桃子
    [USACO10HOL]牛的政治Cow Politics
    ArcEngine中合并断开的线要素(根据几何判断)
    ArcEngine环境下合并断开的线要素(根据属性)
    Web Service和WCF的到底有什么区别
    OGC 的 WMS、WFS 及WCS服务(转)
    ArrayList的使用方法详解(转)
  • 原文地址:https://www.cnblogs.com/yuqingya/p/12875461.html
Copyright © 2020-2023  润新知