正确的黄瓜测试和maven-cucumber报告的maven pom配置

时间:2017-06-19 19:22:05

标签: java maven cucumber maven-surefire-plugin cucumber-java

我在之前的项目中工作但现在找​​不到它......

我正在使用Maven构建一个java应用程序,我在构建过程中对应用程序运行测试。我正在使用 maven-cucumber-reporting 插件v3.0.0汇总结果报告。

我想:

  1. 运行黄瓜测试
  2. 生成报告(黄瓜测试是否失败)
  3. 如果失败则生成报告后失败
  4. 如何使用 maven-surefire-plugin maven-cucumber-reporting 插件以及任何其他插件来设置我的pom以使其工作?< / p>

    更新1:

    这是我目前的pom配置:

            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-surefire-plugin</artifactId>
                <version>2.19.1</version>
                <configuration>
                    <testFailureIgnore>true</testFailureIgnore>
                </configuration>
            </plugin>
            <plugin>
                <groupId>net.masterthought</groupId>
                <artifactId>maven-cucumber-reporting</artifactId>
                <version>${cucumber.reporting.version}</version>
                <executions>
                    <execution>
                        <id>execution</id>
                        <phase>verify</phase>
                        <goals>
                            <goal>generate</goal>
                        </goals>
                        <configuration>
                            <projectName>${project.artifactId}</projectName>
                            <outputDirectory>${project.basedir}/src/test/report/cucumber-reports</outputDirectory>
                            <cucumberOutput>${project.basedir}/src/test/report/cucumber.json</cucumberOutput>
                            <skippedFails>true</skippedFails>
                            <enableFlashCharts>false</enableFlashCharts>
                            <buildNumber>${project.version}</buildNumber>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <groupId>com.coderplus.maven.plugins</groupId>
                <artifactId>copy-rename-maven-plugin</artifactId>
                <version>1.0</version>
                <inherited>false</inherited>
                <executions>
                    <execution>
                        <id>copy-file</id>
                        <phase>test</phase>
                        <goals>
                            <goal>copy</goal>
                        </goals>
                        <configuration>
                            <sourceFile>${project.basedir}/src/test/report/cucumber.json</sourceFile>
                            <destinationFile>${project.parent.basedir}/src/test/report/cucumber-${project.artifactId}-${project.version}.json</destinationFile>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
    

    如何在maven-surefire-plugin期间运行黄瓜测试,而不是在maven-cucumber-reportingcopy-rename-maven-plugin插件运行之前生成我的报告并将它们放在正确的位置(多个模块pom,我在父级聚合测试, AND THEN 使构建失败?

    目前条件1和2通过(我的Cucumber测试运行,失败,然后生成报告,但构建不会失败)。

    也许更一般地说,我如何在maven构建中运行测试,然后执行一些报告插件,然后在报告插件运行后失败?

1 个答案:

答案 0 :(得分:0)

我已经在跑步者中成功使用了format = {"pretty", "html:target/Destination"},例如Tutorialspoint上的示例