企业🤖AI智能体构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
# JUnit5 `@Disabled`测试示例 > 原文: [https://howtodoinjava.com/junit5/junit-5-disabled-test-example/](https://howtodoinjava.com/junit5/junit-5-disabled-test-example/) JUnit [`@Disabled`](http://junit.org/junit5/docs/current/api/org/junit/jupiter/api/Disabled.html)注解可用于禁用测试套件中的测试方法。 该注解可以应用于测试类以及各个测试方法。 它仅接受**一个可选参数**,它指示此测试被禁用的原因。 ## `@Disabled`的测试类 将`@Disabled`应用于测试类时,**该类中的所有测试方法也会自动禁用**。 ```java import org.junit.jupiter.api.Assumptions; import org.junit.jupiter.api.Disabled; import org.junit.jupiter.api.Test; @Disabled public class AppTest { @Test void testOnDev() { System.setProperty("ENV", "DEV"); Assumptions.assumeFalse("DEV".equals(System.getProperty("ENV"))); } @Test void testOnProd() { System.setProperty("ENV", "PROD"); Assumptions.assumeFalse("DEV".equals(System.getProperty("ENV"))); } } ``` ![JUnit5 Disabled Annotation Over Class](https://img.kancloud.cn/8e/5f/8e5f670ccb4a9d84cf1f6984e9993b00_654x182.png) JUnit5 类上的`@Disabled`注解 请注意运行次数:2/2(跳过 2 个)。 显然,两个测试都被禁用,因此不执行。 ## JUnit5 `@Disabled`测试方法 `@Disabled`用于表示当前已禁用带注解的**测试方法,因此不应执行**。 ```java import org.junit.jupiter.api.Assumptions; import org.junit.jupiter.api.Disabled; import org.junit.jupiter.api.Test; public class AppTest { @Disabled("Do not run in lower environment") @Test void testOnDev() { System.setProperty("ENV", "DEV"); Assumptions.assumeFalse("DEV".equals(System.getProperty("ENV"))); } @Test void testOnProd() { System.setProperty("ENV", "PROD"); Assumptions.assumeFalse("DEV".equals(System.getProperty("ENV"))); } } ``` ![JUnit5 Disabled Annotation Over Method](https://img.kancloud.cn/26/9e/269e2e1b32a930e167ac8db3bf655ac5_711x174.png) JUnit5 方法上的`@Disabled`注解 将我的问题放在评论部分。 学习愉快! [源码下载](https://github.com/lokeshgupta1981/Junit5Examples/tree/master/JUnit5Examples)