首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在Cucumber 5.6.0中使用Cucumber扩展报告?

如何在Cucumber 5.6.0中使用Cucumber扩展报告?
EN

Stack Overflow用户
提问于 2020-04-19 09:34:59
回答 1查看 4.2K关注 0票数 1

我从Cucumber 1.2.5升级到了Cucumber 5.6.0。升级进行得相当顺利,但是我的扩展报告崩溃了。我试图升级它们并使用Cucumber 4 Adapter。文档很稀疏,我无法让它正常工作。所以我去下载了Example Implementation。我能够编译和运行它,并获得报告。我将示例项目升级到Cucumber 4.8.1,并将Extent升级到4,它运行了,但没有创建报告。我不知所措,我在谷歌上搜索也没有找到任何信息。

以下是原始示例项目:https://github.com/foursyth/extentreports-cucumberN-example

下面是我更新它的尝试:https://github.com/dougnoel/extentreports-cucumberN-example/tree/update_to_Cucumber4-adapter

这是pom.xml:

代码语言:javascript
复制
    <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <cucumber.version>4.8.1</cucumber.version>
</properties>
<dependencies>
    <dependency>
        <groupId>com.aventstack</groupId>
        <artifactId>extentreports-cucumber4-adapter</artifactId>
        <version>1.0.12</version>
    </dependency>
    <dependency>
        <groupId>io.cucumber</groupId>
        <artifactId>cucumber-core</artifactId>
        <version>${cucumber.version}</version>
    </dependency>
    <dependency>
        <groupId>io.cucumber</groupId>
        <artifactId>cucumber-java</artifactId>
        <version>${cucumber.version}</version>
    </dependency>
    <dependency>
        <groupId>io.cucumber</groupId>
        <artifactId>cucumber-junit</artifactId>
        <version>${cucumber.version}</version>
        <scope>test</scope>
    </dependency>
</dependencies>

这是测试跑步者:

代码语言:javascript
复制
package cucumber.examples.java.calculator;

import org.junit.runner.RunWith;

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

@RunWith(Cucumber.class)
@CucumberOptions(plugin = {"com.aventstack.extentreports.cucumber.adapter.ExtentCucumberAdapter:", "json:target/cucumber-report.json"}
, tags = { "@foo" }
)
public class RunCukesTest {

}

下面是我更新到Cucumber 5.6.0的项目,在这个项目中,我试图保持范围报告的正常工作:https://github.com/dougnoel/sentinel/tree/93_update_cucumber

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-04-23 22:30:55

Grasshopper在评论中回答了这个问题。解决方案是他提供的fantastic instructionscode

在pom.xml中,我添加了:

代码语言:javascript
复制
<dependency>
    <groupId>com.aventstack</groupId>
    <artifactId>extentreports</artifactId>
    <version>4.1.5</version>
</dependency>

<dependency>
    <groupId>tech.grasshopper</groupId>
    <artifactId>extentreports-cucumber5-adapter</artifactId>
    <version>1.1.0</version>
</dependency>

在我的测试运行器中,我添加了:

代码语言:javascript
复制
package cucumber.examples.java.calculator;
import org.junit.runner.RunWith;
import io.cucumber.junit.CucumberOptions;
import io.cucumber.junit.Cucumber;

@RunWith(Cucumber.class)
@CucumberOptions(monochrome = true
    , features = "src/test/java/features"
    , glue = { "stepdefinitions", "com.dougnoel.sentinel.steps" }
    , plugin = {"com.aventstack.extentreports.cucumber.adapter.ExtentCucumberAdapter:"}

最后一步是在src/test/resources/中添加一个只有三行的配置文件extent.properties

代码语言:javascript
复制
extent.reporter.html.start=true
extent.reporter.html.out=reports/extent-cucumber-report.html
screenshot.dir=reports/

它现在可以像以前一样工作了!

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61298488

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档