当前位置: 首页 > 知识库问答 >
问题:

Mavencucumber报告失败-Java.io.Filenot找到异常cucumber.json

于飞飙
2023-03-14

我在尝试使用Maven Reporting Mojo运行CucumberJVM测试时遇到以下错误。

[INFO]---maven-cucumber-报告:0.0.5:生成(执行)@testproject---关于生成java.io.FileNotFoundExc0019: /Users//ideaProjects/testproject/Target/cucumber.json(没有这样的文件或目录)

我在POM.xml文件中有以下依赖项。

<dependency>
    <groupId>net.masterthought</groupId>
    <artifactId>maven-cucumber-reporting</artifactId>
    <version>${maven.cucumber.reporting.version}</version>
</dependency>

<dependency>
    <groupId>net.masterthought</groupId>
    <artifactId>cucumber-reporting</artifactId>
    <version>${cucumber.reporting.version}</version>
</dependency>

<dependency>
    <groupId>com.googlecode.totallylazy</groupId>
    <artifactId>totallylazy</artifactId>
    <version>1077</version>
</dependency>


<dependency>
    <groupId>com.beust</groupId>
    <artifactId>jcommander</artifactId>
    <version>1.25</version>
</dependency>

存储库设置为以下。

<repositories>
    <repository>
        <id>repo.bodar.com</id>
        <url>http://repo.bodar.com</url>
    </repository>

    <repository>
        <id>sonatype-releases</id>
        <url>https://oss.sonatype.org/content/repositories/releases/</url>
    </repository>
</repositories>

插件设置为:

 <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-surefire-plugin</artifactId>
                <version>2.16</version>
                <configuration>
                    <testFailureIgnore>true</testFailureIgnore>
                </configuration>
            </plugin>
            <plugin>
                <groupId>net.masterthought</groupId>
                <artifactId>maven-cucumber-reporting</artifactId>
                <version>${maven.cucumber.reporting.version}</version>
                <executions>
                    <execution>
                        <id>execution</id>
                        <phase>verify</phase>
                        <goals>
                            <goal>generate</goal>
                        </goals>
                        <configuration>
                            <projectName>${project.name}</projectName>
                            <outputDirectory>${project.build.directory}/cucumber-html-reports</outputDirectory>
                            <cucumberOutput>${project.build.directory}/cucumber.json</cucumberOutput>
                            <enableFlashCharts>false</enableFlashCharts>
                        </configuration>
                    </execution>
                </executions>
            </plugin>

我使用的是标准的maven项目结构,功能文件位于/src/test/resources中,步骤定义位于/src/test/main下。

请您建议如何解决这个问题。我在MAC 64位操作系统上看到了这个问题。

提前谢谢。

向你问好,拉贾

共有1个答案

濮俊美
2023-03-14

该插件从json生成HTML报告。因此,第一步是让cucumber生成json。

当我遇到同样的问题时,我发现问题的原因是cucumber.json文件不存在。

我在我的项目中通过在@CucumberOptions注释下添加json: Target来解决这个问题,然后生成json。例如

@CucumberOptions(features = "src/test/resources/features/some.feature",
         monochrome = false, format = {"pretty", "json:target/cucumber.json"})

MasterThink插件然后通过在${project.build.directory}/cucumber.JSON

此时,Maven插件从JSON生成HTML。

 类似资料:
  • 背景资料: Maven版本:3.2.5 Java版本:1.8 cucumber报告版本:3.8.0 我有一个多模块maven java项目。我有cucumber测试和maven cucumber reporting插件,为每个模块运行和工作。 问题:我想在所有子模块构建完成后,生成一个包含所有cucumber.json文件的大型报告。 我可以吗: 在所有子模块构建和测试(创建cucumber.js

  • null 通过查看错误,我试图解决它,因此我将sqoop(本地机器/usr/local/sqoop)文件夹复制到hdfs目录(hdfs://localhost:54310/usr/local/sqoop)。这解决了我的问题。我想从这里知道一些事情:- 在将sqoop转换为hdfs之前,我的安装是否正确? 是否需要将sqoop目录从ext文件系统复制到hdfs文件系统。 16/07/02 13:22

  • 我在ec2实例上集成了Nutch1.13和Solr 6.5.1。我确实复制了模式。使用下面的cp命令将xml转换为Solr。我给localhost发了兴奋剂。宿主在nutch站点。nutch_home/conf文件夹中的xml。 cp /usr/local/apache-nutch-1.13/conf/schema.xml /usr/local/apache-nutch-1.13/solr-6.5

  • 问题内容: 在学习Java时,我经常会偶然发现此错误。它是这样的: 只是一个例子,我见过很多不同的例子。在这种情况下,导致错误的代码是: 一旦将语句放入块中,错误总是消失并且代码编译并成功运行。有时对我来说已经足够了,但有时却不行。 首先,我从中学习的示例并不总是使用,但是显然应该可以使用。 更重要的是,有时当我将整个代码放在中时,它根本无法工作。例如在这种情况下,我需要; 在区块中;但如果上述本

  • 问题内容: 我收到了一个未报告的异常;必须在下面的fill方法中被捕获或声明为抛出错误。从我读过的类似文章中,我假设错误是由read方法引发Exception引发的,但我无法修复。 填充定义为: 问题答案: 您的call ,它被声明为throw ,但是您既没有捕获witin异常,也没有声明它可能被抛出。 最简单的解决方法是将的签名更改为: 我也强烈建议 不要 关闭中的读者。通常,获取资源的相同代码

  • 问题内容: 我想打开一个文件并对其进行扫描以打印其令牌,但出现错误:未报告的异常java.io.FileNotFoundException; 必须被捕获或声明为抛出Scanner stdin = new Scanner(file1);该文件与正确的名称位于同一文件夹中。 问题答案: 您正在使用的构造函数将引发FileNotFoundException,您必须在编译时捕获该异常。 上面的表示法(在括