当前位置: 首页 > 知识库问答 >
问题:

在Spring boot最新版本中使用Mockito对RestTemplate进行Mocktesting

裴俊迈
2023-03-14

我使用的是1.3.3.Spring Boot的发行版。

Mockito.when(restTemplate.exchange(  
Mockito.anyString(),  
Mockito.any(HttpMethod.class),  
Mockito.any(HttpEntity.class),  
Mockito.any(Class.class)))  
.thenReturn(new ResponseEntity<String>("",   
new HttpHeaders(), HttpStatus.OK));  

共有1个答案

范翰海
2023-03-14

您需要模拟responseEntity,以便:

ResponseEntity<String> mockResponse = mock(ResponseEntity.class);
when(mockResponse.getStatusCode()).thenReturn(HttpStatus.OK);

然后就像你以前一样:

when(mockRestTemplate.exchange(anyString(), anyObject(), anyObject(), eq(String.class)))
    .thenReturn(mockResponse);
 类似资料:
  • 我们的代码使用Asyncresttemplate如下所示

  • 问题内容: 有没有办法在Redis中进行条件设置? 我想使用Redis缓存一些对象。缓存的每个用户(服务器程序)都将检查对象,并在对象具有更新版本时对其进行更新。我需要确保在更新步骤中,只有最新版本才真正保存在Redis中。 问题答案: 您可以编写一个lua脚本,该脚本将检查密钥的当前值,如果该值与新密钥不同,则将其更改。我在c中添加了一个通过c程序调用lua脚本的示例,并完成了所需的工作。

  • 在最新的Flutter 1.0稳定版和Dart更新到vscode之后,我无法使用vscode的热加载。如果我从终端运行它,一切都很好。颤抖的医生没有抱怨,我不知道如何解决它。我试图从vscode中卸载颤动和飞镖,但到目前为止没有运气。我得到的错误是 ../../third _ party/dart/runtime/VM/object . h:8954:错误:句柄检查失败:see ' home pa

  • 最近我和Laravel一起工作。我使用作曲家来安装包和工匠的命令。 问题是我的机器使用的是Laravel 5.4而不是5.7。 当我运行phpinfo()时,结果是PHP版本7.2.7。您是否认为问题在于我没有使用最新版本的xampp,其中包含PHP7?

  • 我正在使用Java的spring mvc(基于注释)。我需要在我的应用程序中做rest API。我对API和REST都很陌生。在我的REST应用程序中,所有的基本配置都需要做些什么?我计划使用“RestTemplate”如何用RestTemplate做基本的身份验证(在URL头中传递用户名和密码)?请任何人帮帮我。 提前道谢。

  • 我一直试图用restTemplate传递基本身份验证,但它甚至没有将身份验证头传递给服务器。下面是我使用的bean定义` `