Skip to content

JUnit 5 完全指南

Java 单元测试的核心框架,2026年最新标准


概述

JUnit 5 是 Java 单元测试的最新标准,由三个主要模块组成:

模块Artifact职责
JUnit Platformjunit-platform-commons测试发现的通用 API
JUnit Jupiterjunit-jupiter-*新一代测试编程模型
JUnit Vintagejunit-vintage-engine兼容 JUnit 3/4 的测试

快速开始

Maven 依赖

xml
<dependencies>
    <dependency>
        <groupId>org.junit.jupiter</groupId>
        <artifactId>junit-jupiter</artifactId>
        <version>5.10.2</version>
        <scope>test</scope>
    </dependency>
</dependencies>

<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-surefire-plugin</artifactId>
            <version>3.2.5</version>
        </plugin>
    </plugins>
</build>

Gradle 依赖

groovy
test {
    useJUnitPlatform()
}

dependencies {
    testImplementation 'org.junit.jupiter:junit-jupiter:5.10.2'
}

核心内容导航

专题内容
**Java\JUnit5-注解体系**生命周期、标记、条件执行、嵌套测试
**Java\JUnit5-断言机制**基础断言、组合断言、AssertJ
**Java\JUnit5-参数化测试**@ValueSource、@CsvSource、@MethodSource
**Java\Mockito-完全指南**Mock 对象、验证调用、ArgumentMatchers
**Java\SpringBoot-测试专题**@SpringBootTest、@WebMvcTest、@DataJpaTest
**Java\JUnit5-最佳实践**AAA模式、测试替身、性能优化

新特性亮点

  1. 嵌套测试 - 用 @Nested 组织相关测试用例
  2. 动态测试 - @TestFactory 动态生成测试用例
  3. 条件执行 - @EnabledIf / @DisabledIf
  4. 标签过滤 - @Tag 替代过时的 @Category
  5. 并行执行 - 配置 junit.jupiter.execution.parallel.enabled=true
  6. 显示名称 - @DisplayName 支持中文、emoji

学习路径

入门 → 注解体系 → 断言机制 → 参数化测试 → Mockito → Spring Boot → 最佳实践

📚 建议顺序:先掌握注解体系 → 断言机制 → 参数化测试 → Mockito → Spring Boot 集成


相关工具

  • AssertJ - 流式断言库
  • Mockito - Mock 框架
  • TestContainers - 真实数据库测试
  • REST Assured - REST API 测试
  • JaCoCo - 代码覆盖率

#标签 #java #单元测试 #junit5 #testing

Knowledge4J — Java 知识库