mockito Powermockito 对象映射器

mockito Powermockito object mapper

我在对象映射器中使用以下模拟 writeValueAsString(any()) 方法。但是 writeValueAsString 方法没有被模拟,也没有在我正在应用程序中测试的方法中被调用。

我也尝试了 spy,但没有成功。还有其他建议吗

试验 1

ObjectMapper mockOM = Mockito.mock(ObjectMapper.class);
when(mockOM.writeValueAsString(any())).thenReturn(t);

试验 2

ObjectMapper mockOM = Mockito.spy(new ObjectMapper());
when(mockOM.writeValueAsString(any())).thenReturn(t);

t这里是一个字符串。

任何帮助都会很棒

我曾经 运行 遇到过同样的问题。 以下为我解决了这个问题:

ObjectMapper mockOM = Mockito.mock(ObjectMapper.class);
// old: when(mockOM.writeValueAsString(any())).thenReturn(t);
doReturn(t).when(mockOM).writeValueAsString(any());