SpringBoot单元测试service、dao等空指针异常

SpringBoot单元测试service、dao等空指针异常

在完成业务代码后通常要进行本地单元测试,再上线测试,但是在单元测试的时候,通过@Autowried或者@Resource注入的Bean没有被创建,因为这些Bean是Spring的IoC容器创建的,SpringBoot没有启动的话也就不可能创建这些Bean了,因此报空指针异常

解决方法

在测试类上加上如下两个注解

1. @RunWith(SpringRunner.class)

2. @SpringBootTest(classes = UserMainApplication.class)

其中UserMainApplication是整个SpringBoot项目的启动类

单元测试单码如下:

@SpringBootTest(classes = UserMainApplication.class)
@RunWith(SpringRunner.class)
public class UserServiceImplTest {
    
    

    @Resource
    private UserService userService;

    @Test
    public void testDelete() {
    
    
        userService.delete(3);
    }
}

这样,进行单元测试的时候就不会再报空指针异常了。

猜你喜欢

转载自blog.csdn.net/qq_27198345/article/details/113094098