我有一个pom.xml文件,其中包含surefire:test插件,并有两个配置文件来运行不同的测试模块/测试。我试图通过命令“mvn surefire:test -PfirstProfile,secondProfile”来运行这些测试。 但是,只有在pom.xml中编写的第二个配置文件被执行。这个命令是由Apache Maven网站推荐的。以下是我的pom.xml文件:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>${maven.plugin.surefire.version}</version>
<configuration>
<forkMode>always</forkMode>
<!-- <testFailureIgnore>true</testFailureIgnore> -->
<failIfNoTests>false</failIfNoTests>
<skipTests>${skipTests}</skipTests>
<runOrder>${testRunOrder}</runOrder>
</configuration>
</execution>
</executions>
</plugin>
<profile>
<id>firstProfile</id>
<properties>
<skipTests>false</skipTests>
</properties>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>${maven.plugin.surefire.version}</version>
<configuration>
<includes>
<include>**/AbcTest.java</include>
</includes>
</configuration>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>SecondProfile</id>
<properties>
<skipTests>false</skipTests>
</properties>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>${maven.plugin.surefire.version}</version>
<configuration>
<includes>
<include>**/xyzTest.java</include>
</includes>
</configuration>
</plugin>
</plugins>
</build>
</profile>
那么我如何同时运行这两个配置文件呢?我也尝试了执行 ID,但它没有起作用。
IT*.java
、*IT.java
或*ITCase.java
,这是由maven-failsafe-plugin直接支持的。如果您遵循这些约定,就不需要配置(约定优于配置范例)。 - khmarbaise