【问题标题】:Maven failsafe plugin not firing integration testMaven故障安全插件未触发集成测试
【发布时间】:2017-01-12 19:18:28
【问题描述】:

无法理解这是怎么回事。当我跑步时,

mvn failsafe:integration-test

它首先触发我的集成测试(测试以 ***IT.java 结尾)。然后,当我立即执行相同的命令时,它会显示“没有要运行的测试”。

任何信息的帮助将不胜感激。下面是我的pom。

<plugin>
     <groupId>org.apache.maven.plugins</groupId>
     <artifactId>maven-failsafe-plugin</artifactId>
     <version>2.19.1</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 failsafe:integration-test,而是运行mvn clean verify...
  • @Tunaki - 谢谢!但是,mvn clean verify 只触发 units tests 而不是 integration tests

标签: java maven maven-plugin maven-failsafe-plugin


【解决方案1】:

如果您按照http://maven.apache.org/surefire/maven-failsafe-plugin/usage.html 中的说明配置故障保护插件:

<project>
  [...]
  <build>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-failsafe-plugin</artifactId>
        <version>2.19.1</version>
        <executions>
          <execution>
            <goals>
              <goal>integration-test</goal>
              <goal>verify</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
    </plugins>
  </build>
  [...]
</project>

那么mvn clean verify 应该可以解决问题 (http://maven.apache.org/surefire/maven-failsafe-plugin/)。

【讨论】:

    【解决方案2】:

    根据docs 你应该使用

    mvn verify
    

    因为 " 在运行集成测试时,您应该使用(也更短) mvn verify 调用 Maven,而不是尝试直接调用 integration-test 阶段,否则将不会执行集成测试后阶段。 "

    请注意,如果您在单元测试(test 阶段)中出现错误,则构建将在那里停止,并且不会运行集成测试(检查Maven Build Lifecycle 以了解何时运行。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-12-12
      • 1970-01-01
      • 2016-02-15
      • 1970-01-01
      • 1970-01-01
      • 2012-08-21
      • 2013-11-12
      相关资源
      最近更新 更多