如何将模拟服务器的打印响应包含回 karate.HTML 报告中

问题描述 投票:0回答:1

我想知道是否可以将与给定模拟服务器打印的请求(传入)和响应(传出)的交互包含回完成的本机 karate.html 报告中?

我已经玩了一点,但我还没有能够将其纳入报告中。我可以打印它并在控制台输出上直观地看到它,但无法集成到报告中。

这可能吗?

干杯

JB

附注我希望一切顺利:)

karate reporting mockserver-netty
1个回答
0
投票

可以从

Logger
获取 Karate 用于报告的
ThreadLocal
实例,如下所示:

private static com.intuit.karate.Logger logger() {
    ScenarioEngine engine = ScenarioEngine.get();
    return engine.logger;
}

然后使用这个

Logger
可以为HTML报告做出贡献。

但是,这对于模拟来说可能很棘手,因为模拟内部需要

ScenarioEngine
的另一个实例,并且幕后有一些黑客来交换 ThreadLocal。这可能在未来切换JS引擎后会得到改善。

我还必须提醒您,此 API 将来可能会发生变化。我认为它不会比将软件包更改为

io.karatelabs
更大的改变 - 但仍然不能保证。

© www.soinside.com 2019 - 2024. All rights reserved.