SpringBoot整合junit

时间:2025-01-21 11:55:09

SpringBoot 整合 junit 特别简单,分为以下三步完成:

1 在测试类上添加 @SpringBootTest 注解
2 使用 @Autowired 注入要测试的资源
3 定义测试方法进行测试

1.实验准备: 

创建一个名为 springboot_junit_test 的 SpringBoot 工程,工程目录结构如下

在 com.example.service 下创建 BookService 接口,内容如下 

public interface BookService {
    public void save();
}

在 com.example.service.impl 包写创建一个 BookServiceImpl 类,使其实现 BookService 接口,内容如下

@Service
public class BookServiceImpl implements BookService {
    @Override
    public void save() {
        System.out.println("service is running!");
    }
}

2.编写测试类 

在 test/java 下创建 com.example 包,在该包下创建测试类,将 BookService 注入到该测试类中 

@SpringBootTest
class SpringbootJunitTestApplicationTests {

    @Autowired
    public BookService bookService;
    @Test
    void contextLoads() {
        bookService.save();
    }

}

注意:这里的引导类所在包必须是测试类所在包及其子包。

例如:

        引导类所在包是 com.example

        测试类所在包是 com.example

 如果不满足这个要求的话,就需要在使用 @SpringBootTest 注解时,使用 classes 属性指定引导类的字节码对象。如

@SpringBootTest(classes = SpringbootJunitTestApplicationTests.class

3.运行测试方法 

整合成功!