我目前正在开发 Spring Boot 应用程序。作为其中的一部分,我一直在使用 TDD 来证明我的更改是正确的。为此,我使用 Wiremock 来复制外部 API。我想知道是否可以像使用 Mockito 一样链接多个响应(如下所示):
when(myMock.doTheCall())
.thenReturn("You failed")
.thenReturn("Success");
WiremockRule 会有类似的东西吗?
最佳答案
通常 WireMock 将对任何以相同方式匹配的请求返回相同的响应。如果您希望第二次获得不同的响应,则必须使用有状态行为: http://wiremock.org/docs/stateful-behaviour/ 。另一种选择是在扩展的帮助下生成动态响应: http://wiremock.org/docs/extending-wiremock/ 。
所以你的问题的答案是 NO ,不是开箱即用的。
如果您的测试因此变得笨拙,您可能想要围绕 WireMock 提取一些帮助程序/包装器。
关于tdd - Wiremock 响应的链接,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/50840452/