Maven运行单项测试简介

692 阅读5分钟

Maven Run Single Test

Maven运行单项测试简介

Maven运行单项测试用于在maven中实现的指定项目上运行单项测试。在运行单个测试时,我们需要使用surefire插件,因为该插件只包含目标的一个测试。我们需要在pom.xml文件中添加该插件。通过使用maven项目的默认配置,我们可以使用mvn test命令执行maven项目的所有配置。

主要启示

  • 它用于在我们定义了测试方法的单个类或方法上运行测试。
  • 我们也可以使用mvn test命令在所有项目上运行测试。在对单个方法执行测试的同时,它将对指定的方法执行测试。

概述

在执行单个类或方法时,我们使用maven来运行单个测试。假设我们需要从配置到项目中的所有测试中运行一个测试,那么我们需要在指定应用程序上运行测试时定义特定的测试名称。

我们需要在项目目录下运行该测试,我们的pom.xml文件将位于该目录下。在maven中运行所有测试是非常容易的。我们需要使用mvn命令来运行所有测试。我们可以使用项目库所在的命令行来运行所有测试。在maven应用程序中,运行单个测试是非常容易的。

如何在Maven中运行单个测试?

下面的步骤显示了我们如何在maven中运行单个测试,具体步骤如下。

为了运行单个测试,我们需要创建项目模板,我们创建的项目模板名为maven_test,具体步骤如下。

1.在这一步,我们使用spring初始化器创建maven_test项目。以下是我们提供的项目名称maven_test。

组名 - com.example
工件 - maven_test
名称 - maven_test
包装 - jar
Java版本 - 8
语言 - java

Maven Run Single Test 1

2.第二步,我们通过使用spring工具套件打开maven测试项目的项目模板,如下所示。

Maven Run Single Test 2

3.打开maven测试项目后,在下面的例子中我们可以看到,我们正在检查项目的结构。

checking the structure of project

4.检查完项目结构后,在这一步,我们将添加surefire插件,在maven项目上运行单个测试,如下所示。

代码。

<plugin>
  <groupId> org.apache.maven.plugins </groupId>
  <artifactId> maven-surefire-plugin </artifactId>
  <version> 2.22.2 </version>
</plugin>
<plugin>
  <groupId> org.apache.maven.plugins </groupId>
  <artifactId> maven-failsafe-plugin </artifactId>
  <version> 2.22.2 </version>
</plugin>

输出

Maven Run Single Test 4

5.在pom.xml文件中加入测试插件后,在这一步中,我们将创建简单的测试类来运行单个测试,如下所示。

代码

class maven_test1 {
@Test
   void test1() {
   logger.info("Run test1");
   }
}
class maven_test2 {
@Test
void test2() {
   logger.info("Run test2");
}
@Test
void test3() {
   logger.info("Run test3");
}
@Test
void test4() {
   logger.info("Run test4");
}
@Test
void test5() {
   logger.info("Run test5");
  }
}

输出

simple test classes

6.在创建了简单的测试类后,现在我们可以在上面创建的类上运行单个测试类,如下所示。在下面的例子中,我们在maven_test1类上执行测试,如下所示。

代码:

mvn test –Dtest = "maven_test1"

输出

Maven Run Single Test 6

Maven运行单个测试项目

我们可以通过使用maven在所有项目上运行测试。与在单个方法或类上运行测试相比,在所有项目上运行测试非常简单。我们使用maven_test项目来运行单个测试项目。

以下是maven_test项目的结构,如下所示。

Maven Run Single Test 7

在下面的例子中,我们在项目上运行测试的情况如下。要在项目上运行测试,我们不需要定义任何参数。我们只提供以下命令,在maven项目上运行测试。在项目上运行测试时,我们只需要提供mvn test命令。

代码

mvn test

输出

Maven Run Single Test 8

我们也可以通过使用spring工具套件在项目中执行maven测试。下面的例子显示,执行测试的方法如下。

spring tool suite

Maven Run Single Test 10

Maven运行单个测试类

我们可以通过使用maven在单个类上运行测试。与在单个方法上运行测试相比,在单个类上运行测试是非常简单的。我们使用maven_test项目来运行单个测试类,如下所示。以下是maven_test项目的结构。

Maven Run Single Test 11

在下面的例子中,我们在一个单一的类上运行测试,如下所示。要在类上运行测试,我们需要定义-Dtest参数,通过该参数我们提供了执行测试的类的名称,如下所示。在下面的例子中,我们在maven_test1类上执行了一个测试。

代码

mvn test –Dtest = "maven_test1"

输出

Maven Run Single Test 12

在上面的例子中,我们在maven_test1类上执行了测试,现在我们在maven_test2类上执行测试,如下所示。

代码

mvn test –Dtest = "maven_test2"

输出

Maven Run Single Test 13

配置

为了运行单一测试配置,我们需要在pom.xml文件中添加surefire插件。 Surefire插件用于在我们的项目上运行测试。下面的例子显示了在我们的项目中添加surefire插件。

代码

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

输出

Maven Run Single Test 14

添加完surefire插件后,现在我们要创建一个类来运行它,如下所示。

代码

class maven_test1 {
@Test
void test1() {
logger.info("Run test1");
}
}
class maven_test2 {
@Test
void test1() {
logger.info("Run test2");
}
void test2() {
logger.info("Run test3");
}
}

输出

After adding the surefire plugin

在配置了单一测试后,在这一步中,我们将在test1方法上运行一个单一测试,如下所示。

代码

mvn test -Dtest="maven_test2#test1*"

输出

test1 method

在test1方法上运行测试后,现在在这一步,我们在test2方法上运行一个单一的测试。

代码

mvn test -Dtest="maven_test2#test2*"

输出

Maven Run Single Test 17