故障安全集成测试期间出错不会导致Maven构建失败

时间:2013-01-30 21:43:46

标签: maven selenium integration-testing maven-failsafe-plugin

我有Failsafe运行Selenium集成测试。如果我在测试中的一个断言未通过且测试失败,那么Maven构建将按预期失败。但是,如果测试错误,则构建意外地成功(下面的输出)

Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 14.075 sec <<< FAILURE!

Results :

Tests in error:
  test(uk.co.ned24.ExpandedIT)

Tests run: 1, Failures: 0, Errors: 1, Skipped: 0

[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESSFUL
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 7 minutes 40 seconds
[INFO] Finished at: Wed Jan 30 16:58:28 GMT 2013
[INFO] Final Memory: 78M/209M
[INFO] ------------------------------------------------------------------------

我不确定这是否意味着是否发生以及Selenium是否会导致意外行为?我查看了插件doco,找不到任何可以设置的标志,以便在测试错误后使构建失败。

理想情况下,我想让测试错误的构建失败,所以会感激任何建议!我已经附上了从我的POM剪下的Failsafe,以防万一。使用它。

谢谢,尼克

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-failsafe-plugin</artifactId>
    <executions>
        <execution>
            <id>integration-test</id>
            <goals>
                <goal>integration-test</goal>
            </goals>
        </execution>
        <execution>
            <id>verify</id>
            <goals>
                <goal>verify</goal>
            </goals>
        </execution>
    </executions>
    <configuration>
        <systemPropertyVariables>
            <configDir>${basedir}/local/integration-test</configDir>
        </systemPropertyVariables>
    </configuration>
</plugin>

2 个答案:

答案 0 :(得分:3)

您应该拨打mvn verify而不是mvn integration-test

引用Failsafe Plugin page(强调我的):

  

在构建生命周期的集成测试和验证阶段使用Failsafe插件来执行应用程序的集成测试。故障安全插件在集成测试阶段不会使构建失败,从而使集成后测试阶段能够执行。

     

注意:运行集成测试时,你应该调用 maven(更短的类型)

     

mvn verify

     

而不是试图直接调用集成测试阶段,否则将不会执行集成后测试阶段。

答案 1 :(得分:0)

您应该设置maven-failsafe-plugin的版本。例如2.14.1。

您的集成测试类必须以“IntegrationTest”结尾,例如: CustomDaoIntegrationTest

相关问题