首页 > 解决方案 > RestTemplate 的 postForObject 的模拟返回 null

问题描述

我正在尝试模拟 postForObject 但它如何返回 null

restTemplate.postForObject(someUrl, httpEntity, String.class);

这是我的模拟代码

when(restTemplate.postForObject(Mockito.anyString(),Mockito.any(HttpEntity.class),Mockito.any(Class.class))).thenReturn("SOME STR");

我花了将近一天的时间来调试它,但不知道为什么它不起作用!

标签: spring-bootjunit

解决方案


确保 mockito 实际上将你的 mockrestTemplate注入到你正在单元测试的类中,如果没有更正这样做的代码。

尝试像这样提供它:

when(restTemplate.postForObject(Mockito.anyString(),Mockito.any(),Mockito.any())).thenReturn("SOME STR");

推荐阅读