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

指定包路径时JUnit 5 Runner不生成Karate summary.html控制台输出

问题描述

当指定包路径执行测试时,JUnit 5 Runner不会在控制台输出Karate的summary.html报告路径,仅在target文件夹中生成单个feature文件的测试报告;而Parallel Runner在相同场景下可以正常在控制台输出汇总报告的相关信息。请问如何让JUnit 5 Runner在指定包路径时,也能在控制台查看汇总的summary报告?

现有JUnit5 Runner代码

package com.tests;

import com.intuit.karate.junit5.Karate;

public class FakeJsonServerRunnerTest {
    @Karate.Test
    Karate testSample() {
        return Karate.run("classpath:com/tests").relativeTo(getClass());
    }
}

现有Parallel Runner代码

package com.tests;

import static org.junit.jupiter.api.Assertions.assertEquals;

import org.junit.jupiter.api.Test;

import com.intuit.karate.Results;
import com.intuit.karate.Runner;

public class FakeJsonServerParallelRunnerTest {

    @Test
    void testParallel() {
        Results results = Runner.path("classpath:com/tests")
                .tags("~@ignore")
                //.outputCucumberJson(true)
                .parallel(9);
        assertEquals(0, results.getFailCount(), results.getErrorMessages());
    }
}
解决方案

可以通过在JUnit5 Runner中手动触发汇总报告生成的方式实现控制台输出summary报告路径,具体修改如下:

修改后的JUnit5 Runner代码

package com.tests;

import com.intuit.karate.junit5.Karate;
import com.intuit.karate.Reporter;
import com.intuit.karate.Results;

public class FakeJsonServerRunnerTest {
    @Karate.Test
    Karate testSample() {
        // 执行测试并获取结果
        Results results = Karate.run("classpath:com/tests")
                .relativeTo(getClass())
                .reportDir("target/karate-reports") // 指定报告生成目录
                .outputCucumberJson(true) // 生成cucumber.json用于汇总报告
                .results();
        
        // 手动生成汇总报告
        Reporter.generateReport(results.getReportDir());
        
        return results.getKarate();
    }
}

说明

  1. 通过.results()方法获取测试执行的Results对象,该对象包含测试结果的元数据和报告目录信息
  2. 调用Reporter.generateReport()方法基于单个feature的报告和cucumber.json生成汇总的summary.html
  3. 执行后控制台会输出类似Karate report: target/karate-reports/summary.html的路径信息,同时汇总报告也会生成在指定目录下

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.12 05:38:33