mockito Powermockito对象映射器

时间:2018-01-24 15:32:30

标签: java unit-testing mockito powermockito

我在对象映射器中使用以下方法来模拟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在这里是一个字符串。

任何帮助都会很棒

1 个答案:

答案 0 :(得分:0)

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

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