
JUnit禁用测试的定义
Junit禁用测试的工作方式类似于在junit 4版本中工作的@忽略注解。@Disabled和@Ignore注解在junit中的工作类似,只是区别在于我们在junit 4中使用@Ignore注解,在junit 5中使用@Disabled注解。通过使用junit禁用测试,我们可以跳过测试或指定的测试组的执行,同时在测试级别上应用注释。
JUnit禁用测试的概述
- 当在junit的类级应用@Disabled注解时,所有的测试将被跳过。如果假设在方法层应用注解,指定的方法测试将被跳过。
- 根据ignore注解,禁用注解将跳过指定的测试案例。参数是可选的,就像在忽略注解中一样。
- 在忽略注解和禁用注解之间跳过测试时,只有一个不同点,那就是当我们在类级别应用注解时,在执行类文件后,运行计数将显示1/1的测试案例被跳过。
- 在junit 5中提供了跳过的计数。在junit 5中,运行计数显示为3/3的测试案例被跳过。我们可以说,在3个测试案例中,有三个方法被跳过。
- 所以我们可以说,根据跳过的测试次数,与忽略注解相比,@Disabled会做得更好。当从代码中禁用指定的测试时,Junit禁用测试是非常重要和有用的。
- 如果假设我们想在junit 5中忽略指定代码中的方法,那么我们可以使用junit @Disabled注解。
- 我们还可以根据disabled注解提供的可选参数来提供指定测试的原因。
- 通过在junit中使用disabled注解,这对于在同一项目中工作的其他用户来说是很有帮助的,他们可以理解为什么指定的代码被禁止执行。
如何使用JUnit禁用测试?
- Junit禁用是用来跳过特定的或一组测试,以跳过构建失败。我们可以在我们的应用程序中的各种情况下使用junit disable测试。
- 我们可以在junit版本5中使用junit disable test,这在junit版本4中是不可能使用的。
- Junit disable test是用来跳过我们的应用程序的测试执行的,有时我们不需要执行测试用例代码,因为在我们的应用程序还没有完全开发好的时候,我们使用禁用注释来跳过测试执行。
- 以下是在junit中禁用测试的步骤。我们正在创建项目名称为JunitDisableTest。在这一步中,我们将在spring boot中创建junit disable test的项目模板。我们提供项目组名称为com.example,工件名称为JunitDisableTest,项目名称为JunitDisableTest,选择java版本为11。我们将spring boot的版本定义为2.7.0。
组 - com.example 工件名称 - JunitDisableTest
名称 - JunitDisableTest Spring boot - 2.7.0
项目 - Maven Java - 11
包名称 - com.example.控件名称 - com.example.JunitDisableTest
项目描述 - JunitDisableTest的项目

- 在这一步中,我们正在提取下载的项目,并通过使用spring工具套件打开该项目,具体如下。

- 在这一步,我们将检查所有的项目结构和文件,如下所示。此外,我们还检查pom.xml文件是否创建。如果这个文件没有被创建,那么我们需要手动创建同样的文件。在下面的例子中,这个文件已经创建了,所以我们没有必要手动创建它。

- 在这一步中,我们将在junit disable test中添加junit的依赖性。
代码 -
dependencies>
<dependency>
<groupId> org.junit.jupiter </groupId>
<artifactId> junit-jupiter-engine </artifactId>
<version> 5.3.1 </version>
<scope> junit- disable-test </scope>
</dependency>
<dependency>
<groupId> junit </groupId>
<artifactId> junit </artifactId>
<version> 4.12 </version>
</dependency>
</dependencies>
<reporting>
<plugins>
<plugin>
<groupId> org.apache.maven.plugins </groupId>
<artifactId> maven-surefire-report-plugin </artifactId>
<version> 2.19.1 </version>
</plugin>
</plugins>
</reporting>
- 在添加了依赖性之后,我们正在创建junit disable测试的类,如下所示。我们正在创建一个名为JunitDisableTest的类,如下所示。我们可以看到,我们在类之前声明了禁用注解,所以它将跳过所有来自JunitDisableTest类的测试。同样在下面的例子中,我们使用了两个方法junit1和junit2。我们在类中定义了这些方法,所以这些方法也从测试套件中跳过。
代码 -
@Disabled ("Junit Disabled Test")
public class JunitDisableTest {
@Test
void junit1 () {
assertEquals(3, 1 + 5);
}
@Test
void junit2() {
assertEquals(5, 2 + 6);
}
}
Junit禁用测试方法
- 我们可以通过在方法中指定禁用注解来禁用测试方法。如果我们在类之前使用了禁用注解,它将禁用整个类。但如果我们在类和方法中使用了禁用注解,那么它将适用于指定的方法,使其不能被测试执行。
- 下面的例子显示了禁用的测试方法如下。我们创建了一个名为JunitDisableTest1的类,如下所示。我们可以看到,我们在类的后面声明了禁用注解,所以它将跳过JunitDisableTest1类中的方法。我们使用了两个方法junit1和junit2。我们在类中定义了这些方法,并在每个方法上使用了@Disabled注解,所以它将跳过测试执行。
代码 -
public class JunitDisableTest1 {
@Disabled ("Junit disabled test method")
@Test
void Junit1 () {
assertEquals (7, 5 + 5);
}
@Disabled ("Junit disabled test method")
@Test
void Junit2 () {
assertEquals (5, 2 + 2);
}
}
示例
- 下面是junit disable类测试的例子,如下所示。
代码 - 例子
@Disabled ("Junit Disabled Test")
public class DisabledTest {
@Test
void test () {
assertEquals (5, 1 + 9);
}
}
- 下面是junit禁用方法测试的例子,如下。
代码--示例
public class DisabledTest {
@Disabled ("Junit Disabled Test")
@Test
void test () {
assertEquals (9, 1 + 7);
}
}
总结
我们可以通过使用junit disabled注解来忽略指定应用程序的所有测试类。我们可以把junit disable注解写成@Disabled。通过在junit中使用disabled注解,这对其他在同一项目中工作的用户来说是有帮助的,他们可以理解为什么指定的代码被禁止执行。