我使用MockRestServiceServer模拟http响应。在特定情况下,我两次呼叫一个端点,第二次想要一个不同的响应。
但是当我写第二个期望时,就像它覆盖了我的第一个期望。
一个人如何为同一请求编写多个响应?
答案 0 :(得分:2)
经过一些研究,我找到了它:
实例化MockRestServiceServer时,默认情况下会获取UnorderedRequestExpectationManager。通过在SimpleRequestExpectationManager中通过Builder进行更改,增加了对按定义顺序添加多个响应的支持。
private MockRestServiceServer createMockServerBy(Class<? extends
RestTemplate> requiredType) {
RestTemplate template = context.getBean(requiredType);
return MockRestServiceServer.bindTo(template).build(new
SimpleRequestExpectationManager());
}
答案 1 :(得分:0)
您尝试过WireMock吗?它很棒,并提供了许多模拟API的功能。看看http://wiremock.org/