You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将Karate测试报告发布至Cucumber Open报告平台

对接Cucumber Open发布Karate报告解决方案

核心原理说明

Karate的执行内核与原生Cucumber Runner完全独立,所有Karate特性的Step定义均由框架内部封装,不会暴露为原生Cucumber可扫描的Java StepDef实现,因此直接给ParallelRunner添加@CucumberOptions注解用原生Cucumber触发执行的方式必然失败,会出现找不到feature文件或无法匹配Step的报错。


可行操作步骤

  • 第一步:通过Karate原生执行能力生成标准Cucumber JSON报告
    Karate的Runner/ParallelRunner本身支持输出完全符合Cucumber格式规范的JSON报告,只需在执行时指定输出目录即可,示例代码如下:
    import com.intuit.karate.Results;
    import com.intuit.karate.Runner;
    import org.junit.jupiter.api.Test;
    
    public class KarateTestRunner {
        @Test
        public void runTests() {
            Results results = Runner.path("classpath:karate/features")
                // 指定Cucumber报告输出目录
                .outputDir("target/cucumber-json-reports")
                .parallel(5);
        }
    }
    
    执行完成后即可在target/cucumber-json-reports目录下获取到可用的cucumber.json文件。
  • 第二步:直接通过Cucumber命令行工具上传已生成的报告
    不需要再次触发用例执行,直接使用Cucumber官方提供的命令行工具,读取已生成的cucumber.json文件即可完成上传发布,核心命令参考:
    cucumber-reporting publish \
      --input target/cucumber-json-reports/cucumber.json \
      --token ${YOUR_CUCUMBER_OPEN_TOKEN}
    

补充说明

如果使用CI/CD流水线,可将上述上传步骤配置为用例执行完成后的后置操作,即可实现每次测试完成后自动上传报告到Cucumber Open云环境共享。

内容的提问来源于stack exchange,提问作者karateTester

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.26 00:15:07