maven failsafe:集成测试

时间:2012-08-09 12:29:36

标签: maven continuous-integration integration-testing maven-failsafe-plugin phase

我正在使用maven 2并且集成测试在* IT.java文件中。当我运行命令mvn failsafe:integration-test集成测试运行罚款时。但是当我运行mvn integration-test时,它不会运行我的集成测试。如何删除前缀failsafe:

在pom.xml中我使用:

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-failsafe-plugin</artifactId>
    <version>2.12</version>
    <executions>
        <execution>
        <phase>integration-test</phase>
        <goals>
            <goal>integration-test</goal>
            <goal>verify</goal>
        </goals>
        </execution>
    </executions>
</plugin>

更新
我还尝试了pom.xml设置,然后mvn clean verify。我只获得了 JUnit 测试的确定报告。在控制台输出上仍然缺少 JUnit 集成测试。

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-failsafe-plugin</artifactId>
    <version>2.12</version>
    <executions>
        <execution>
            <id>failsafe-integration-tests</id>
            <phase>integration-test</phase>
            <goals>
                <goal>integration-test</goal>
            </goals>
        </execution>
        <execution>
            <id>failsafe-verify</id>
            <phase>verify</phase>
            <goals>
                <goal>verify</goal>
            </goals>
        </execution>
    </executions>
</plugin>

现在我通过插件设置绑定了禁用单元测试:

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-surefire-plugin</artifactId>
    <configuration>
        <!-- Disable unit tests -->
        <skip>true</skip>
    </configuration>
</plugin>

Wen我运行mvn clean verify我的故障安全集成测试运行!但为什么它不能与surefire单元测试一起使用?有什么想法吗?

1 个答案:

答案 0 :(得分:2)

你有失败的单元测试吗?

执行mvn failsafe:integration-test时,您明确地调用了failafe,但是当您执行mvn integration-test时,您正在调用阶段,因此执行单元测试,如果单元测试失败,则集成阶段为永远达不到。这可以解释为什么mvn clean verify在您跳过配置执行单元测试时会起作用。