java - 无法在空手道框架中生成报告
问题描述
我在使用空手道框架生成报告时遇到问题。我已经提到了链接 https://github.com/intuit/karate/blob/master/karate-demo/src/test/java/demo/DemoTestParallel.java https://github.com/intuit/karate#parallel-execution https://github.com/intuit/karate/tree/master/karate-demo#example-report 和给定的完全一样,但我仍然面临生成报告的问题。请查看以下项目详情。POM.xml
<dependencies>
<dependency>
<groupId>com.intuit.karate</groupId>
<artifactId>karate-apache</artifactId>
<version>0.9.5</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>com.intuit.karate</groupId>
<artifactId>karate-junit4</artifactId>
<version>0.9.5</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>net.masterthought</groupId>
<artifactId>cucumber-reporting</artifactId>
<version>5.1.1</version>
<scope>test</scope>
</dependency>
</dependencies>
测试赛跑者
public class TestRunner {
@Test
public void testParallel() {
Results results = Runner.path("classpath:testapis").tags("@test").parallel(5);
generateReport(results.getReportDir());
assertTrue(results.getErrorMessages(), results.getFailCount() == 0);
}
public static void generateReport(String karateOutputPath) {
Collection<File> jsonFiles = FileUtils.listFiles(new File(karateOutputPath), new String[] {"json"}, true);
List<String> jsonPaths = new ArrayList(jsonFiles.size());
jsonFiles.forEach(file -> jsonPaths.add(file.getAbsolutePath()));
Configuration config = new Configuration(new File("target"), "demo");
ReportBuilder reportBuilder = new ReportBuilder(jsonPaths, config);
reportBuilder.generateReports();
}
}
特征文件
@test
Feature: Title of your feature
I want to use this template for my feature file
Scenario: Title of your scenario
* url "https://jsonplaceholder.typicode.com"
Given path "todos/1"
When method GET
Then status 200
我只是执行mvn clean test
并在控制台中收到以下错误消息
-------------------------------------------------------
T E S T S
-------------------------------------------------------
Running testapis.TestRunner
23:24:41.844 [main] INFO com.intuit.karate.Runner - waiting for parallel features to complete ...
Karate version: 0.9.5
======================================================
elapsed: 0.06 | threads: 5 | thread time: 0.00
features: 0 | ignored: 0 | efficiency: 0.00
scenarios: 0 | passed: 0 | failed: 0
======================================================
Feb 23, 2020 11:24:42 PM net.masterthought.cucumber.ReportBuilder generateErrorPage
INFO: Unexpected error
net.masterthought.cucumber.ValidationException: None report file was added!
at net.masterthought.cucumber.ReportParser.parseJsonFiles(ReportParser.java:58)
at net.masterthought.cucumber.ReportBuilder.generateReports(ReportBuilder.java:88)
at testapis.TestRunner.generateReport(TestRunner.java:34)
at testapis.TestRunner.testParallel(TestRunner.java:24)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
执行了 0 个功能,但按照给出的指令,我相信了。
有人可以帮我解决这个问题。
解决方案
如果执行了 0 个测试,这是正常的,第 3 方 cucumber-reporting 库将抛出此错误。
看起来您pom.xml
没有正确设置资源:https ://github.com/intuit/karate#folder-structure
如果您仍然卡住,请按照以下流程操作:https ://github.com/intuit/karate/wiki/How-to-Submit-an-Issue
推荐阅读
- android - 即使使用 -f -jn 命令也无法解决 repo 同步失败(获取错误)
- php - 如何用新方法扩展 Laravel 模型、集合?
- python - 如何从 tensorflow.estimator 获取仅具有单个输入的数据帧的结果
- python - 计算日期列表之间的平均天数
- javascript - Tic-Tac-Toe autoplay does not work as expected
- eclipselink - EclipseLink - 重新加载元数据
- vba - VBA 代码将 PPT 幻灯片另存为 PNG 文件,同时忽略隐藏的幻灯片
- linux-device-driver - Creating a Device-Tree for the hardware on a PCI device
- vb.net - 函数返回列表(结构)
- jquery - 带有方括号的 Django 表单、多对多关系和数组字段结果