> 文章列表 > SpringBoot @SpringBootTest 无法启动服务

SpringBoot @SpringBootTest 无法启动服务

SpringBoot @SpringBootTest 无法启动服务

        这几天在看Hikari、Druid连接池。按照网上代码写Junit测试类。当时代码如下:

package com.ceaning.crudp.utils;import org.junit.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import javax.sql.DataSource;
import java.util.HashMap;
import java.util.Map;@SpringBootTest
public class JwtUtilsTest {@Autowiredprivate DataSource dataSource;@Testpublic void testConnection() throws Exception{System.out.println(dataSource.getConnection());}
}

        运行提示:

java.lang.NullPointerException

        当时搞整了好久,都没有找出原因,也问过Java的同事,也没想原因。今天无意中在网上看到关于这个得文章(https://blog.csdn.net/owlion/article/details/128020387),发现竟然是注解@Test得问题。

        原我引用得是

import org.junit.Test;

        更换引用

import org.junit.jupiter.api.Test;

        得以解决。坑啊,赶紧记录下。

        我赶紧试试两个有什么不同,发现

        org.junit.Test 适用于当前类的方法测试,不依赖spring服务,直接执行@Test注解的方法;

        org.junit.jupiter.api.Test 依赖spring服务,当引用此路径,spring服务先启动,在执行注解@Test的方法。