Karate 支持是否在 html 报告中显示传入模拟服务器 API 请求的服务器端场景的断言或失败? [关闭]

2023-12-04

这可能是一个愚蠢的问题,或者可能已经得到回答,但我无法找到任何答案:

我需要测试向特定端点或消费者发送 API 请求的微服务。我能够使用空手道成功编写模拟,并根据“服务器端”场景中发生的所需过滤条件和验证发回响应。

如果任何断言失败,它会记录服务器端场景失败。 我想知道如何将这些添加到报告中(我目前使用可以与空手道集成的黄瓜报告),并在任何服务器端场景失败时使测试失败?

任何帮助,将不胜感激。


很好的问题,这是一个不寻常的要求 - 但你可以通过空手道模拟发挥超级创意。

请记住 - 空手道模拟是一个合法的 REST 服务器,因此您需要做的就是再添加一个请求“路由”。您已经知道可以将数据“收集”到定义在的全局变量中Background。所以像这样:

Background:
* def errors = []

Scenario: pathMatches('/myapi')
* def result = karate.match("request == { foo: 'bar' }")
* if (!result.pass) errors.add(result)
* def response = { some: 'response' }

Scenario: pathMatches('/mytest')
* def response = errors

现在,在测试结束时,只需调用附加的/mytestAPI,您会得到一个包含所有错误的漂亮 JSON 数组。

对于那些寻找更复杂模式的人,例如如何处理 webhook 或“回调”,请参阅:https://twitter.com/getkarate/status/1417023536082812935

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Karate 支持是否在 html 报告中显示传入模拟服务器 API 请求的服务器端场景的断言或失败? [关闭] 的相关文章

随机推荐