企业🤖AI Agent构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
# 使用 Maven 执行 JUnit 测试用例 > 原文: [https://howtodoinjava.com/junit/executing-junit-testcases-with-maven/](https://howtodoinjava.com/junit/executing-junit-testcases-with-maven/) [**Maven**](//howtodoinjava.com/maven/ "Maven") 是用于项目依赖和构建管理的好工具。 它可以用于运行项目的 [**Junit**](//howtodoinjava.com/junit/ "JUnit") 测试用例。 在本文中,我将展示一些简单但有用的命令示例,以各种方式运行测试用例。 为了演示,我使用以下命令创建了一个 [**maven java 项目**](//howtodoinjava.com/maven/create-a-simple-java-project-using-maven/ "Create a simple java project using maven"): ```java mvn archetype:generate -DgroupId=com.howtodoinjava.junit -DartifactId=mavenJunitDemo -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false ``` 然后,我在测试文件夹中创建了一个测试类,如下所示。 ```java package com.howtodoinjava.junit; import org.junit.Test; public class TestSurefire { @Test public void testcaseFirst() { System.out.println("First testcase executed"); } @Test public void testcaseSecond() { System.out.println("Second testcase executed"); } @Test public void testcaseThird() { System.out.println("Third testcase executed"); } @Test public void otherTestcase() { System.out.println("Another testcase executed"); } } ``` 让我们检查一下 maven 测试命令并查看其输出: 1)使用命令“`mvn test`”运行所有测试用例:该命令将运行测试文件夹中存在的所有测试用例,而不考虑其他任何条件。 ```java -------------------------------------------------------  T E S T S ------------------------------------------------------- Running com.howtodoinjava.junit.AppTest Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.023 sec Running com.howtodoinjava.junit.TestSurefire Another testcase executed First testcase executed Third testcase executed Second testcase executed Tests run: 4, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.02 sec Results : Tests run: 5, Failures: 0, Errors: 0, Skipped: 0 ``` 2)仅使用“`-Dtest=TestSurefire test`”执行特定的测试类:这将执行测试类`TestSurefire`中的所有测试用例。 ```java -------------------------------------------------------  T E S T S ------------------------------------------------------- Running com.howtodoinjava.junit.TestSurefire Another testcase executed First testcase executed Third testcase executed Second testcase executed Tests run: 4, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.033 sec Results : Tests run: 4, Failures: 0, Errors: 0, Skipped: 0 ``` 您可以在命令中使用多个测试类,甚至可以在测试类名称中使用通配符来匹配一组测试类。 例如`mvn -Dtest=TestSurefire,TestOth*Class test`。 3)仅使用“`mvn -Dtest=TestSurefire#testcaseFirst test`”在测试类中测试某个测试用例:此命令将仅执行单个测试用例方法,即`testcaseFirst()`。 ```java -------------------------------------------------------  T E S T S ------------------------------------------------------- Running com.howtodoinjava.junit.TestSurefire First testcase executed Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.034 sec Results : Tests run: 1, Failures: 0, Errors: 0, Skipped: 0 ``` 4)使用通配符映射测试多个测试用例,例如 “`mvn -Dtest=TestSurefire#testcase* test`”:这将有助于在一个简单的短命令中运行多个具有相似名称的测试用例。 ```java -------------------------------------------------------  T E S T S ------------------------------------------------------- Running com.howtodoinjava.junit.TestSurefire First testcase executed Second testcase executed Third testcase executed Tests run: 3, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.034 sec Results : Tests run: 3, Failures: 0, Errors: 0, Skipped: 0 ``` 给我留言不清楚,或者我缺少的东西。 **祝您学习愉快!**