注意:
SpringBoot 2.4 以上版本移除了默认对 JUnit4.x 的依赖.如果需要兼容 JUnit4.x 版本,需要自行引入(默认使用JUnit5.X)
既然用到了JUnit那就简单说下他的历史:
JUnit 起源于 1997年,最初版本是由两位编程大师 Kent Beck 和 Erich Gamma 的一次飞机之旅上完成的,由于当时 Java 测试过程中缺乏成熟的工具,两人在飞机上就合作设计实现了 JUnit 雏形,旨在成为更好用的 Java 测试框架。如今二十多年过去了,JUnit 经过各个版本迭代演进,已经发展到了 5.x 版本,为 JDK 8以及更高的版本上提供更好的支持 (如支持 Lambda ) 和更丰富的测试形式 (如重复测试,参数化测试)。
JUnit5.X部分注解解释
@BeforeEach:在每个单元测试方法执行前都执行一遍
@BeforeAll:在每个单元测试方法执行前执行一遍(只执行一次)
@DisplayName("修改别名"):用于修改测试类或测试方法的名称
@RepeatedTest(n):重复性测试,即执行n次 就不需要使用@Test
@ParameterizedTest:参数化测试,需搭配@ValueSource使用,就不需要使用@Test
@ValueSource(ints = {1, 2, 3}):参数化测试提供数据,需搭配@ParameterizedTest使用
下边都会使用并展示运行结果
开始操作:
pom.xml导入依赖
<dependency>
  <groupId>org.springframework.boot</groupId>
  <artifactId>spring-boot-starter-test</artifactId>
  <scope>test</scope>
</dependency>定位到要测试的类 Ctrl+Shift+T 创建测试类
勾选要测试的方法

测试类代码如下:
package com.test.demotest.contoller;
import org.junit.jupiter.api.BeforeAll;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.DisplayName;
import org.junit.jupiter.api.RepeatedTest;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.params.ParameterizedTest;
import org.junit.jupiter.params.provider.ValueSource;
import org.springframework.boot.test.context.SpringBootTest;
/**
 * @Author: yipeng.liu
 * @Date: 2022/2/18 16:26
 * @Description: CallbackControllerTest
 */
class CallbackControllerTest {
  
  public void beforeEach() {
    System.out.println("执行 beforeEach");
  }
  
  public static void beforeAll() {
    System.out.println("执行 beforeAll");
  }
  ("修改别名1")
  (2)
  public void alarmCallback() {
    System.out.println("Hello Test1!");
  }
  
  ("修改别名2")
  public void test2() {
    System.out.println("Hello Test2!");
  }
  
  (strings = {"a","b","c"})
  public void test3(String str) {
    System.out.println(str);
  }
}运行结果截图:










