2017-01-09 10 views
-1

私はMockito getMessageから値を得ていません。 私が間違っていることがわかりません。何か案は?getMessageが模擬値を返さない

テストケース:

SQSJSONMessage sqsJSONMessage = mock(SQSJSONMessage.class); 

when(objMapper.readValue(message,SQSJSONMessage.class)).thenReturn(sqsJSONMessage); 

doNothing().when(listener).decryptAndReplaceMessage(sqsJSONMessage); 

when(objMapper.readValue(sqsJSONMessage.getMessage(), RecordCreatedMessage.class)).thenReturn(recordCreatedmessage); 

when(sqsJSONMessage.getMessage()).thenReturn("test"); -- this throws null pointer exception 

答えて

0

私が気づいた最初の事はあなたがobjMapperの第二スタブでsqsJSONMessage.getMessage()を使用している、また、あなたはおそらくその前sqsJSONMessage.getMessage()のスタブを移動しなければならないことである。

when(sqsJSONMessage.getMessage()).thenReturn("test"); 
when(objMapper.readValue("test", RecordCreatedMessage.class)).thenReturn(recordCreatedmessage); 

パラメータを気にしない場合は、"test"の代わりにanyString()を使用してください。