如何使用Maven运行多个测试类或测试方法?

问题描述 投票:11回答:4

为了运行所有Maven测试,我们可以使用:

mvn clean test

如果我们想运行特定的测试类,我们可以使用:

mvn clean test -Dtest=className

如果我们想从特定的测试类中运行特定的方法,我们可以使用:

mvn clean test -Dtest=className#methodName

但我想跑:

  1. 多个测试类(并非所有属于src\test\java
  2. 来自特定测试类的多种测试方法(并非所有属于src\test\java的特定测试类的测试方法)

是否有Maven命令使用我可以实现的两个以上?

java unit-testing maven
4个回答
19
投票

如果使用surefire插件,那么您可以使用以下选项。

对于您可以使用的多个类,

mvn -Dtest=TestSquare,TestCi*le test

对于同一类中的多种方法,您可以使用,

mvn -Dtest=TestCircle#testOne+testTwo test

请参阅docs


3
投票

为了使其工作(至少从Windows命令行),我不得不在测试参数周围添加引号。

mvn -Dtest="TestSquare,TestCi*le" test

(使用maven-surefire-plugin:2.17)


1
投票

如果要从子目录启动所有测试Clases,例如:/ doc /您可以使用命令:

mvn -Dtest=*/doc/* test

0
投票

您可以在TestNG中添加多个类及其组,例如

<groups>
  <run>
    <include name = "checkintest" />
    <include name = "videoSpider" />
    <include name = "xmlTCUploader" />
    <include name = "PALLogin" />
  </run>
</groups>
<classes>
  <class name="SeleniumUC"/>
  <class name="PALTestCasesSuite"/>
</classes>

在此之后,您可以将这些组与Maven一起使用 -

mvn -Dgroups=PALLogin test
© www.soinside.com 2019 - 2024. All rights reserved.