如何跳过 surefire 测试但 运行 故障安全测试?
How to skip surefire tests but run failsafe tests?
在我的项目中,我有 surefire 和 failsafe 测试。
如果我 运行 和 mvn clean install -DskipTests
那么这两种测试都会被跳过。
如果我尝试 运行 使用 -Dit.test=TestName 进行单个故障安全测试,那么首先进行所有 surefire 测试 运行 然后我的 it 测试..但是随着 surefire 测试的进行好久没这样了
在某些情况下我想跳过 surefire 测试,但 运行 故障安全 IT 测试。
默认情况下,-DskipITs=true
会跳过 Failsafe,但 -DskipTests=true
会跳过 Surefire 和 Failsafe 测试,这有时会让人感到困惑(烦人?)。
无论如何,您可以通过将 Surefire 插件配置为使用不同的 'skip' 参数来更改此行为。例如:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.12.4</version>
<configuration>
<skip>${skipSurefire}</skip>
</configuration>
</plugin>
这将允许您跳过 Surefire 测试,但不会 通过调用以下方式进行故障安全测试:
mvn clean verify -DskipSurefire=true
在我的项目中,我有 surefire 和 failsafe 测试。
如果我 运行 和 mvn clean install -DskipTests
那么这两种测试都会被跳过。
如果我尝试 运行 使用 -Dit.test=TestName 进行单个故障安全测试,那么首先进行所有 surefire 测试 运行 然后我的 it 测试..但是随着 surefire 测试的进行好久没这样了
在某些情况下我想跳过 surefire 测试,但 运行 故障安全 IT 测试。
默认情况下,-DskipITs=true
会跳过 Failsafe,但 -DskipTests=true
会跳过 Surefire 和 Failsafe 测试,这有时会让人感到困惑(烦人?)。
无论如何,您可以通过将 Surefire 插件配置为使用不同的 'skip' 参数来更改此行为。例如:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.12.4</version>
<configuration>
<skip>${skipSurefire}</skip>
</configuration>
</plugin>
这将允许您跳过 Surefire 测试,但不会 通过调用以下方式进行故障安全测试:
mvn clean verify -DskipSurefire=true