JUnit 5 中使用 @Disabled 注解禁用测试,可标注在方法或类上,替代 JUnit 4 的 @Ignore;推荐带原因参数(如 @Disabled("等待第三方 API 上线")),支持 IDE 高亮、Maven 统计跳过数,并可配合 @DisabledOnOs 等条件注解实现环境敏感禁用。

在 JUnit 5 中禁用暂时失效的测试用例,主要用 @Disabled 注解,它替代了旧版 JUnit 4 的 @Ignore,语义更清晰,且会明确标记为“跳过”而非“忽略失败”。
怎么加 @Disabled 注解
直接加在测试方法或测试类上即可:
- 禁用单个方法:在
@Test方法上方添加@Disabled - 禁用整个类:在类声明上方添加
@Disabled - 推荐带上原因(字符串参数),方便团队理解上下文,例如:
@Disabled("等待第三方 API 上线")
为什么不用注释掉@Test 或删代码
手动注释或删除测试方法会丢失测试意图和历史信息,还可能被遗忘恢复。而 @Disabled 是显式、可追溯、可统计的——运行时它仍被识别为测试,只是状态显示为 “skipped”,并在 IDE 和 CI 报告中单独归类,便于后续跟踪和清理。
在 Java 中初始化和管理阿里云 SDK客户端。包括单例模式、线程安全、endpoint 与 region 配置、VPC 终端节点、同步与异步等。
配合条件性禁用更灵活
如果失效只发生在特定环境,可以组合使用条件注解,避免全局禁用:
立即学习“Java免费学习笔记(深入)”;
-
@DisabledOnOs(OS.WINDOWS):在 Windows 下跳过 -
@EnabledOnJre(JRE.JAVA_17):仅在 Java 17+ 执行 - 多个条件可叠加,比如同时限定 OS 和 JRE 版本
禁用后怎么快速找回
IDE(如 IntelliJ)通常支持高亮或筛选所有 @Disabled 测试;Maven 命令也能统计跳过数:mvn test | grep "skipped"
建议定期扫描项目中的 @Disabled 并评估是否可移除——长期存在的禁用项往往是技术债信号。

















