简体   繁体   English

maven-cucumber-reporting 插件未生成报告 - 在最新的 5.3.0 版本中

[英]maven-cucumber-reporting plugin is not generating the report - in latest 5.3.0 version

After copy pasting the code from github for maven cucumber reporting, the report is not generated in the target folder.从 github 复制粘贴代码后用于 maven cucumber 报告,报告不在目标文件夹中生成。 I'm not sure what went missing.我不确定丢失了什么。 I tried with running with Runner class and MVN console both result did not generate the report in the target folder我尝试使用 Runner class 和 MVN 控制台运行,结果都没有在目标文件夹中生成报告

POM file POM 文件

<?xml version="1.0" encoding="UTF-8"?>

<project xmlns="http://maven.apache.org/POM/4.0.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">

    <modelVersion>4.0.0</modelVersion>

    <groupId>MavenWeb</groupId>
    <artifactId>Coderio_Demo</artifactId>
    <version>0.0.1-SNAPSHOT</version>

    <name>Coderio_Demo</name>
    <!-- FIXME change it to the project's website -->
    <url>http://www.example.com</url>

    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <maven.compiler.source>1.8</maven.compiler.source>
        <maven.compiler.target>1.8</maven.compiler.target>
    </properties>

    <dependencies>
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.13</version>

        </dependency>
        <dependency>
            <groupId>org.seleniumhq.selenium</groupId>
            <artifactId>selenium-java</artifactId>
            <version>3.141.59</version>
        </dependency>


        <!-- https://mvnrepository.com/artifact/info.cukes/cucumber-java -->
        <dependency>
            <groupId>io.cucumber</groupId>
            <artifactId>cucumber-junit</artifactId>
            <version>6.4.0</version>
        </dependency>
        <dependency>
            <groupId>io.cucumber</groupId>
            <artifactId>cucumber-java</artifactId>
            <version>6.4.0</version>
        </dependency>
        <!-- https://mvnrepository.com/artifact/org.apache.poi/poi -->
        <dependency>
            <groupId>org.apache.poi</groupId>
            <artifactId>poi</artifactId>
            <version>4.1.2</version>
        </dependency>
        <!-- https://mvnrepository.com/artifact/org.apache.poi/poi-ooxml -->
        <dependency>
            <groupId>org.apache.poi</groupId>
            <artifactId>poi-ooxml</artifactId>
            <version>4.1.2</version>
        </dependency>
        <!-- https://mvnrepository.com/artifact/io.cucumber/cucumber-picocontainer -->
        <dependency>
            <groupId>io.cucumber</groupId>
            <artifactId>cucumber-picocontainer</artifactId>
            <version>6.4.0</version>
            <scope>test</scope>
        </dependency>



        <dependency>
            <groupId>io.github.bonigarcia</groupId>
            <artifactId>webdrivermanager</artifactId>
            <version>3.0.0</version>
        </dependency>
        <dependency>
            <groupId>de.monochromata.cucumber</groupId>
            <artifactId>reporting-plugin</artifactId>
            <version>4.0.56</version>
        </dependency>
        <!-- https://mvnrepository.com/artifact/io.cucumber/cucumber-core -->
        <dependency>
            <groupId>io.cucumber</groupId>
            <artifactId>cucumber-core</artifactId>
            <version>6.4.0</version>
        </dependency>


    </dependencies>

    <build>
        <pluginManagement><!-- lock down plugins versions to avoid using Maven 
                defaults (may be moved to parent pom) -->
            <plugins>
                <!-- clean lifecycle, see https://maven.apache.org/ref/current/maven-core/lifecycles.html#clean_Lifecycle -->
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-surefire-plugin</artifactId>
                    <version>2.18.1</version>
                    <configuration>
                        <testFailureIgnore>true</testFailureIgnore>
                    </configuration>
                </plugin>

                <plugin>
                    <groupId>net.masterthought</groupId>
                    <artifactId>maven-cucumber-reporting</artifactId>
                    <version>5.3.0</version>

                    <executions>
                        <execution>
                            <id>execution</id>
                            <phase>verify</phase>
                            <goals>
                                <goal>generate</goal>
                            </goals>
                            <configuration>
                                <projectName>cucumber-jvm-example</projectName>
                                <!-- optional, per documentation set this to "true" to bypass generation 
                                    of Cucumber Reports entirely, defaults to false if not specified -->
                                <skip>false</skip>
                                <!-- output directory for the generated report -->
                                <outputDirectory>target/customizereports/</outputDirectory>
                                <!-- optional, defaults to outputDirectory if not specified -->
                                <inputDirectory>target/cucumber-reports/cucumber.json</inputDirectory>
                                <jsonFiles>
                                    <!-- supports wildcard or name pattern -->
                                    <param>**/*.json</param>
                                </jsonFiles>
                                <!-- optional, defaults to outputDirectory if not specified -->
                                <classificationDirectory>${project.build.directory}/classifications</classificationDirectory>
                                <classificationFiles>
                                    <!-- supports wildcard or name pattern -->
                                    <param>sample.properties</param>
                                    <param>other.properties</param>
                                </classificationFiles>
                                <parallelTesting>false</parallelTesting>
                                <!-- optional, set true to group features by its Ids -->
                                <mergeFeaturesById>false</mergeFeaturesById>
                                <!-- optional, set true to get a final report with latest results 
                                    of the same test from different test runs -->
                                <mergeFeaturesWithRetest>false</mergeFeaturesWithRetest>
                                <!-- optional, set true to fail build on test failures -->
                                <checkBuildResult>true</checkBuildResult>
                            </configuration>
                        </execution>
                    </executions>


                </plugin>

            </plugins>
        </pluginManagement>
    </build>
</project>

and this my runnerfile这是我的runnerfile

package testRunner;

import org.junit.runner.RunWith;

//import cucumber.api.CucumberOptions;
import io.cucumber.junit.Cucumber;
import io.cucumber.junit.CucumberOptions;
//import cucumber.api.junit.Cucumber;

@RunWith(Cucumber.class)
@CucumberOptions(features = "src/test/java/Features/", plugin = { "json:target/cucumber-reports/cucumber.json",
        "pretty", "html:target/html-report/cucumber-html-reports.html",
        "junit:target/cucumber-reports/cucumber.xml" }, glue = {
                "StepDefination" }, tags = "@LogOut1wwww1", monochrome = true)
public class TestRunner {


}

I ran through mvn clean verify我跑过mvn clean verify

test case got executed, but reports were not generated测试用例已执行,但未生成报告

Change your build section in pom.xml to this将 pom.xml 中的构建部分更改为此

  <build>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-surefire-plugin</artifactId>
        <version>2.18.1</version>
        <configuration>
          <testFailureIgnore>true</testFailureIgnore>
        </configuration>
      </plugin>
      <plugin>
        <groupId>net.masterthought</groupId>
        <artifactId>maven-cucumber-reporting</artifactId>
        <version>5.3.0</version>
        <executions>
          <execution>
            <id>report</id>
            <phase>integration-test</phase>
            <goals>
              <goal>generate</goal>
            </goals>
            <configuration>
              <outputDirectory>${project.build.directory}/cucumber-reports</outputDirectory>
              <jsonFiles>
                <jsonFile>**/*.json</jsonFile>
              </jsonFiles>
              <mergeFeaturesWithRetest>true</mergeFeaturesWithRetest>
              <mergeFeaturesById>true</mergeFeaturesById>
              <checkBuildResult>false</checkBuildResult>
              <skipEmptyJSONFiles>true</skipEmptyJSONFiles>
            </configuration>
          </execution>
        </executions>
      </plugin>
    </plugins>
  </build>

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM