Mockito BDD - mocking RestRemplate exchange() method



我试图用以下代码模拟 RestTemplate exchange(( 调用:

测试方法

given(restTemplate.exchange(any(UriComponents.class), any(HttpMethod.class), any(HttpEntity.class), any(StatusResponse.class)))
            .willReturn(new ResponseEntity<>(HttpStatus.BAD_GATEWAY));

代码无法编译,因为:

  1. 它抱怨cannot resolve method willReturn(new ResponseEntity<>(HttpStatus.BAD_GATEWAY))
  2. 它抱怨cannot resolve method exchange(T, T, T, T)

我应该如何更改签名以使其正常工作?谢谢。

exchange (url( 的第一个参数应该是 eq("url")anyString()(假设"url"是你在测试中使用的值(。

第 4 个参数(响应类(应为 eq(StatusResponse.class)any(Class.class)

查看交换方法的文档。我没有看到任何在参数中使用UriComponents的方法。

作为交换方法的第一个参数,您需要使用StringURIRequestEntity

相关内容

  • 没有找到相关文章

最新更新