使用maven-failsafe-plugin的VM参数

时间:2011-04-06 16:18:06

标签: java maven continuous-integration build-automation maven-plugin

我正在尝试将VM参数传递给Maven,特别是针对由failafe运行的一组测试。

我的pom.xml看起来像这样:

...
<plugin>
  <groupId>org.apache.maven.plugins</groupId>
  <artifactId>maven-failsafe-plugin</artifactId>
  <configuration>
    <argLine>-Dtest.data=true</argLine>
  </configuration>
  <version>2.7.2</version>
  <executions>
    <execution>
      <id>integration-test</id>
      <goals>
        <goal>integration-test</goal>
      </goals>
    </execution>
    <execution>
      <id>verify</id>
      <goals>
        <goal>verify</goal>
      </goals>
    </execution>
  </executions>
</plugin>
...

当我运行命令mvn clean verify时,依赖于test.data设置为true的测试失败。但是,当我运行命令mvn -Dtest.data=true clean verify时,测试全部通过。我需要将参数设置在我的CI环境的pom中。

我在这里错过了什么吗?

提前致谢,

皮特

2 个答案:

答案 0 :(得分:3)

使用<systemPropertyVariables>元素to set system properties(我没有看到文档中提到<argLine>的位置,您在哪里找到它?):

<configuration>
    <systemPropertyVariables>
        <test.data>true</test.data>
    </systemPropertyVariables>
</configuration>

答案 1 :(得分:0)

好吧事实证明,我试图运行的集成测试需要将此参数传递给Tomcat插件而不是Failsafe插件。谢谢你的帮助!