Maven 命令 mvn clean verify 不会激活 Failsafe 到 运行 集成测试
Maven command mvn clean verify does not activate Failsafe to run integration-tests
我正在尝试使用 Maven 插件 Failsafe 运行 我在 src/it/java 目录中的集成测试。我正在使用 build-helper 插件来获取我的集成测试资源
我将故障安全插件设置为...
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-failsafe-plugin</artifactId>
<version>2.22.0</version>
<executions>
<execution>
<goals>
<goal>integration-test</goal>
<goal>verify</goal>
</goals>
</execution>
</executions>
<configuration>
<printSummary>true</printSummary>
</configuration>
</plugin>
使用我的 build-helper 插件设置,例如...
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
<executions>
<execution>
<id>add-source</id>
<phase>generate-sources</phase>
<goals>
<goal>add-test-source</goal>
</goals>
<configuration>
<sources>
<source>
<directory>src/it/java</directory>
</source>
</sources>
</configuration>
</execution>
<execution>
<id>add-resource</id>
<phase>generate-sources</phase>
<goals>
<goal>add-test-resource</goal>
</goals>
<configuration>
<resources>
<resource>
<directory>src/it/resources</directory>
</resource>
</resources>
</configuration>
</execution>
</executions>
</plugin>
我还有 运行 我的单元测试的 Surefire 插件...
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.22.0</version>
</plugin>
当我执行 mvn clean verify 时,只有带有 surefire 和 failsafe 的单元测试 运行 没有 运行,当我尝试 mvn failsafe:verify 时没有测试 运行 ,当我尝试 mvn build-helper:add-test-sources failsafe:verify 时,它会抛出找不到测试源的错误。
[ERROR] Failed to execute goal org.codehaus.mojo:build-helper-maven-plugin:3.0.0:add-test-source (default-cli) on project stkweb: The parameters 'sources' for goal org.codehaus.mojo:build-helper-maven-plugin:3.0.0:add-test-source are missing or invalid -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/PluginParameterException
现在,如果我使用 surefire 稍微更改配置并将我的集成测试放在 src/test/java 文件夹中,它可以 运行 它们没问题。只是出于设计原因,我们希望将它们放在单独的目录中。
问题归结为使用 <pluginManagement>
标签。
<build>
<pluginManagement>
<plugins>
</plugins>
</pluginManagement>
</build>
当我删除 pluginManagement 标签时,它启动了 运行 FailSafe。
<build>
<plugins>
</plugins>
</build>
这也解决了我们在 Jacoco 中遇到的一个问题,之前我们只需要直接调用 Jacoco。
我正在尝试使用 Maven 插件 Failsafe 运行 我在 src/it/java 目录中的集成测试。我正在使用 build-helper 插件来获取我的集成测试资源
我将故障安全插件设置为...
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-failsafe-plugin</artifactId>
<version>2.22.0</version>
<executions>
<execution>
<goals>
<goal>integration-test</goal>
<goal>verify</goal>
</goals>
</execution>
</executions>
<configuration>
<printSummary>true</printSummary>
</configuration>
</plugin>
使用我的 build-helper 插件设置,例如...
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
<executions>
<execution>
<id>add-source</id>
<phase>generate-sources</phase>
<goals>
<goal>add-test-source</goal>
</goals>
<configuration>
<sources>
<source>
<directory>src/it/java</directory>
</source>
</sources>
</configuration>
</execution>
<execution>
<id>add-resource</id>
<phase>generate-sources</phase>
<goals>
<goal>add-test-resource</goal>
</goals>
<configuration>
<resources>
<resource>
<directory>src/it/resources</directory>
</resource>
</resources>
</configuration>
</execution>
</executions>
</plugin>
我还有 运行 我的单元测试的 Surefire 插件...
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.22.0</version>
</plugin>
当我执行 mvn clean verify 时,只有带有 surefire 和 failsafe 的单元测试 运行 没有 运行,当我尝试 mvn failsafe:verify 时没有测试 运行 ,当我尝试 mvn build-helper:add-test-sources failsafe:verify 时,它会抛出找不到测试源的错误。
[ERROR] Failed to execute goal org.codehaus.mojo:build-helper-maven-plugin:3.0.0:add-test-source (default-cli) on project stkweb: The parameters 'sources' for goal org.codehaus.mojo:build-helper-maven-plugin:3.0.0:add-test-source are missing or invalid -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/PluginParameterException
现在,如果我使用 surefire 稍微更改配置并将我的集成测试放在 src/test/java 文件夹中,它可以 运行 它们没问题。只是出于设计原因,我们希望将它们放在单独的目录中。
问题归结为使用 <pluginManagement>
标签。
<build>
<pluginManagement>
<plugins>
</plugins>
</pluginManagement>
</build>
当我删除 pluginManagement 标签时,它启动了 运行 FailSafe。
<build>
<plugins>
</plugins>
</build>
这也解决了我们在 Jacoco 中遇到的一个问题,之前我们只需要直接调用 Jacoco。