cucumber - 无法加载插件类:com.aventstack.extentreports.cucumber.adapter.ExtentCucumberAdapter Cucumber 5.4.2
问题描述
我正在尝试将 ExtentReport 插件与 Cucumber 5+ 一起使用,但到目前为止我看到的大多数教程都是针对 Cucumber 4 或旧的 info.cukes 依赖项,由于与我的应用程序的其他部分发生冲突,我不再能够使用它们.
这些是我对我的 pom 文件和 MainRunner 的依赖项,如果有人能指出我可能遗漏了什么?
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-java</artifactId>
<version>3.141.5</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
</dependency>
<dependency>
<groupId>io.cucumber</groupId>
<artifactId>cucumber-junit</artifactId>
<version>5.4.2</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>io.cucumber</groupId>
<artifactId>cucumber-java</artifactId>
<version>5.4.2</version>
</dependency>
<dependency>
<groupId>io.cucumber</groupId>
<artifactId>gherkin</artifactId>
<version>10.0.0</version>
</dependency>
<dependency>
<groupId>io.cucumber</groupId>
<artifactId>cucumber-picocontainer</artifactId>
<version>5.4.2</version>
</dependency>
<dependency>
<groupId>com.aventstack</groupId>
<artifactId>extentreports</artifactId>
<version>4.0.9</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>com.aventstack</groupId>
<artifactId>extentreports-cucumber4-adapter</artifactId>
<version>1.0.6</version>
</dependency>
<dependency>
<groupId>com.vimalselvam</groupId>
<artifactId>cucumber-extentsreport</artifactId>
<version>3.0.2</version>
</dependency>
</dependencies>
主跑者
import com.cucumber.listener.Reporter;
import io.cucumber.junit.Cucumber;
import io.cucumber.junit.CucumberOptions;
import org.junit.AfterClass;
import org.junit.runner.RunWith;
import selenium_demo.managers.FileReaderManager;
import java.io.File;
@RunWith(Cucumber.class)
@CucumberOptions(
features = {"."},
glue = {"selenium_demo.steps", "selenium_demo.hooks"},
monochrome = true,
plugin = {"pretty", "html:target/cucumber", "json:target/cucumber.json", "com.aventstack.extentreports.cucumber.adapter.ExtentCucumberAdapter:"}
)
public class MainRunner {
@AfterClass
public static void writeExtentReport() {
Reporter.loadXMLConfig(new File(FileReaderManager.getInstance().getConfigReader().getReportConfigPath()));
}
}
可以在此处找到该问题的示例
谢谢你。
解决方案
推荐阅读
- css - 允许一个列溢出到另一个列
- php - 如何将(1)文本框中的 2 个数据插入数据库中的 2 列?
- mongodb - 计算名称以给定字符串开头的集合的文档
- node.js - 如何将参数传递给 graphqlHTTP 中间件
- flutter - 又抛出了一个异常:A RenderFlex 在 Flutter 的右边溢出了 265 像素
- mysql - 如何使用node js和MySql以数组格式从数据库中获取数据
- sql - Hibenate 为辅助键上的连接创建标准
- reactjs - 如何在 React 中使用 Fabric.js 之类的东西?
- php - 为什么这个 json 值不是 PHP 数组键?
- node.js - 应该以什么格式创建获取 POST 请求以访问 Imagga API?