Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/maven/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 针对Cucumber测试和maven Cucumber报告的正确maven pom配置_Java_Maven_Cucumber_Maven Surefire Plugin_Cucumber Java - Fatal编程技术网

Java 针对Cucumber测试和maven Cucumber报告的正确maven pom配置

Java 针对Cucumber测试和maven Cucumber报告的正确maven pom配置,java,maven,cucumber,maven-surefire-plugin,cucumber-java,Java,Maven,Cucumber,Maven Surefire Plugin,Cucumber Java,我在以前的项目中使用过这个,但现在找不到 我正在使用Maven构建java应用程序,并在构建过程中对该应用程序运行测试。我正在使用maven cucumber reporting插件v3.0.0来编写一份结果报告 我想: 运行黄瓜测试 生成报告(无论测试是否失败) 如果生成报告失败,则在生成报告后使生成失败 我如何使用maven surefire插件、maven cucumber reporting插件和任何其他插件的组合来设置pom以使其工作 更新1: 以下是我当前的pom配置:

我在以前的项目中使用过这个,但现在找不到

我正在使用Maven构建java应用程序,并在构建过程中对该应用程序运行测试。我正在使用maven cucumber reporting插件v3.0.0来编写一份结果报告

我想:

  • 运行黄瓜测试
  • 生成报告(无论测试是否失败)
  • 如果生成报告失败,则在生成报告后使生成失败
  • 我如何使用maven surefire插件、maven cucumber reporting插件和任何其他插件的组合来设置pom以使其工作

    更新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>
    
    
    org.apache.maven.plugins
    maven surefire插件
    2.19.1
    真的
    网络智囊团
    马文黄瓜报道
    ${cumber.reporting.version}
    执行
    验证
    生成
    ${project.artifactId}
    ${project.basedir}/src/test/report/cumber reports
    ${project.basedir}/src/test/report/cucumber.json
    真的
    假的
    ${project.version}
    com.coderplus.maven.plugins
    复制重命名maven插件
    1
    假的
    复制文件
    测试
    复制
    ${project.basedir}/src/test/report/cucumber.json
    ${project.parent.basedir}/src/test/report/cucumber-${project.artifactId}-${project.version}.json
    
    如何让Cumber测试在
    maven surefire plugin
    期间运行,在
    maven Cumber reporting
    copy rename maven plugin
    插件运行以生成报告并将其放置在正确的位置(我在父级聚合测试的多模块pom)之前不失败,然后使构建失败

    目前情况1和2通过(我的Cucumber测试运行、失败,然后生成报告,但构建没有失败)


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

    我已经成功地在运行程序中使用了
    format={“pretty”,“html:target/Destination”}
    ,如我正在创建JSON报告的示例所示,这就是我想要的,然后使用maven cucumber报告插件生成更广泛的HTML报告。我将用pom中的更多内容更新问题,使其更清楚。