Maven是一个用于项目依赖和构建管理的强大工具。它可以用于运行项目中的JUnit测试用例。在这篇文章中,我将展示一些简单但有用的命令示例,以各种方式运行测试用例。
为了演示,我使用以下命令创建了一个Maven Java项目:
mvn archetype:generate -DgroupId=com.howtodoinjava.junit -DartifactId=mavenJunitDemo
-DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false
然后,我在“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”命令运行所有测试用例:这个命令会运行“test”文件夹中所有的测试用例,而不管其他任何标准。
-------------------------------------------------------
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”命令执行特定的测试类:这将执行TestSurefire类中的所有测试用例。你可以在命令中使用多个测试类,甚至可以使用通配符匹配一组测试类。例如:mvn -Dtest=TestSurefire,TestOthClass test
-------------------------------------------------------
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
3)使用“mvn -Dtest=TestSurefire#test”命令测试特定测试用例:此命令将只执行TestSurefire类中的单个测试用例方法,即test()方法。
-------------------------------------------------------
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”命令测试多个具有相似名称的测试用例:这将帮助你在一个简单的简短命令中运行多个具有相似名称的测试用例。
请注意,为了运行这些命令,你需要在包含pom.xml文件的项目的根目录中打开命令行。
-------------------------------------------------------
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