gpt4 book ai didi

testing - 来自同一JSON映射的Wiremock返回成功或错误响应

转载 作者:行者123 更新时间:2023-12-03 10:07:16 26 4
gpt4 key购买 nike

我对Wiremock还是很陌生,即使我已经阅读了文档,但仍然没有完全了解它。

我想找出的是...

有没有一种方法可以在1个 stub 中定义两个行为-成功响应情况和错误响应(或多个)情况,例如请求的 body 匹配模式不满意?
是支持的还是我应该为每种无效类型编写单独的请求匹配器,例如请求正文?当然,以更普遍的方式。

如果可以在同一 stub JSON中组合错误响应和成功响应,请给我一个示例,或者也将我指向一个示例吗?

最佳答案

可以使用两个具有两个不同优先级的 stub 轻松地完成特定示例(例如,是否满足请求的主体匹配模式?)。
第一个 stub 将具有更高的优先级,并且具有更具体的匹配,并返回成功响应。第二个 stub 将具有较低的优先级,本质上是所有其他调用的全部,并返回失败响应。

例如,如果唯一的区别是您希望所有对“/success-endpoint”的调用都返回200,而其他所有调用都返回400 ...

stubFor(get("/success-endpoint").atPriority(1)
.willReturn(ok("Success response body")));

stubFor(get(urlMatching("/.*")).atPriority(2)
.willReturn(aResponse().withStatus(400).withBody("Error response body")));

如果要将成功/错误响应合并到同一 stub 中,则需要多用一些创造力。如果状态代码在请求正文中,则可以使用“响应模板”获取该代码并将其作为响应状态代码插入。如果它不是 super 可见的,并且您需要在请求中使用其他内容,则可以创建一个Response Transformer并将其用于通知您的条件响应。场景可能在您的小巷中。抱歉,此响应的其余部分不是 super 特定的,而是模糊的,但是在不知道您的请求/响应是什么样的情况下,有很多可行的选择。

关于testing - 来自同一JSON映射的Wiremock返回成功或错误响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61664059/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com