JUnit 5入门只需三步:一要同时添加junit-jupiter-api和junit-jupiter-engine依赖,缺一则测试无法运行;二用@Test注解标记测试方法,可包私有,推荐静态导入Assertions;三在测试类或方法上右键运行,勿在项目根目录执行。

直接上手写一个能跑起来的测试,比看十页理论更管用。JUnit 5 的入门门槛其实不高,关键在三步:加对依赖、写对注解、跑对位置。
第一步:配好依赖,别漏掉 engine
只加 junit-jupiter-api 是不够的——它只负责“写测试”,不负责“运行测试”。必须同时引入 junit-jupiter-engine,否则 IDE 或命令行会提示 “No tests found” 或直接跳过执行。
- Maven 用户,在
pom.xml的中添加:
- Gradle 用户,在
build.gradle中写:
testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine:5.10.2'
版本建议用最新稳定版(截至 2026 年 10 月为 5.10.2),避免因版本错位导致注解不识别或断言失效。
第二步:写一个最简测试类
不用继承、不用实现接口、方法也不必是 public——JUnit 5 支持包级私有方法。新建类如 CalculatorTest.java,放在 src/test/java 下即可:
在调试 Java 后端 API 故障时使用此技能,尤其适用于以下任务:分析日志、跨 Controller、Service 和 Mapper 层追踪请求、定位异常根因、检查 SQL 执行或参数流转,以及生成简洁的诊断结论与修复方案。
import static org.junit.jupiter.api.Assertions.*;
class CalculatorTest {
@Test
void addReturnsCorrectResult() {
int result = 2 + 3;
assertEquals(5, result);
}
}
-
@Test是唯一必需注解,标记该方法为可执行测试 -
assertEquals等断言来自Assertions类,推荐静态导入,代码更干净 - 类名和方法名支持中文或空格(配合
@DisplayName更直观)
第三步:在正确位置运行
右键点击测试方法名、测试类名,或测试文件标签页,选择 “Run ‘xxx’” —— 不要右键项目根目录或 main 包。
- IDEA 默认支持 JUnit 5,只要依赖到位,自动识别
@Test - 如果报 “Class not found” 或 “TestEngine not found”,大概率是漏了
junit-jupiter-engine或 scope 写成了compile - 终端运行:执行
./gradlew test或mvn test,结果会在控制台和target/surefire-reports/中生成
顺手加点实用小技巧
入门后立刻提升体验的几件事:
- 用
@BeforeEach初始化共享对象,替代重复 new - 用
@DisplayName("验证负数相加")让测试报告更易读 - 加
junit-jupiter-params依赖,三行代码就能跑多组输入:@ValueSource(ints = {1, 2, 3}) - 测试异常?直接写
assertThrows(NullPointerException.class, () -> obj.doSomething())
Java免费学习笔记:立即使用
解锁 Java 大师之旅:从入门到精通的终极指南










