SuperAPI AI 工具集

junit

测试与质量

查看项目

更新于 10-15 21:49

技能介绍

用途:JUnit 5 是 Java 与 JVM 生态的测试框架,适用于 Java、Kotlin 及 Spring Boot 应用的单元测试与集成测试。

主要能力:架构分为 JUnit Platform(启动与 Maven/Gradle/IDE 执行)、JUnit Jupiter(现代 API、注解、扩展)与 JUnit Vintage(兼容 JUnit 3/4)。支持 Jupiter 断言、@ParameterizedTest 参数化测试(CSV、方法源、枚举参数)、@Nested 嵌套测试与 @BeforeEach 等生命周期回调,以及通过 @ExtendWith 定制测试执行。可与 @SpringBootTest、MockMvc 配合测试企业级 Web 应用。

使用方式:编写测试类并导入 org.junit.jupiter.api.Test 与 Assertions,例如 assertEquals(2, 1+1, "Optional failure message");参数化测试使用 @ParameterizedTest 搭配 @CsvSource;组织测试可用 @Nested 与 @DisplayName;文件测试可用 @TempDir。构建配置需包含 JUnit 5 Jupiter 引擎,Gradle 中启用 useJUnitPlatform()。

最佳实践:统一使用 JUnit Jupiter,现代项目移除 junit-vintage-engine;可搭配 AssertJ 实现流畅断言;使用 @DisplayName 提供描述性名称;测试类与方法可为包级私有;测试应彼此独立,不依赖执行顺序。

常见问题:出现 No tests found matching selector 通常因缺少 Jupiter 引擎依赖;AssertionFailedError 需检查 assertEquals(expected, actual) 的参数顺序;IllegalStateException: Failed to load ApplicationContext 多为 Spring Boot 配置错误,可检查 @ContextConfiguration 或用 @MockBean 补全缺失 Bean。具体版本、许可与详细安装步骤暂未提供。