2
我試圖模擬一個類的非靜態方法。我正在測試同一類的一種方法。但是它返回一個nullPointerException。不知道我在這裏做錯了什麼。任何幫助將不勝感激。Mockito doReturn拋出nullPointerException異常
我的代碼:
public class B2P {
protected Future<List<FeedObject>> evaluate (NodeContext
nodeContext) throws Exception {
Map<BoardQuery, Future<List<FeedObject>>> resultsFuturesMap =
getResultsFutureMap(boardsQuery,
query, generatorParams, resourceContainer);
return resultsFuturesMap;
}
public Map<BoardQuery, Future<List<FeedObject>>>
getResultsFutureMap(){
DoSomething;
}
}
我的測試類:
public class testClass {
public void test() {
B2P b2p = new B2P();
B2P mockSpy = Mockito.spy(b2p);
doReturn(ImmutableMap.of(
new BoardQuery().setBoardId(102L).setSignatureWeights(
ImmutableMap.of("s3", 1.0, "s4", 1.0, "s5", 1.0)),
Future.value(ImmutableList.of(
new FeedObject().setObjectId(904L).setObjectDetails(new
ObjectDetails()
.setCommonObjectDetails(new CommonObjectDetails())
.setPinDetails(new
PinDetails().setSource(FeedSourceType.FANTASIO))),
new FeedObject().setObjectId(903L).setObjectDetails(new
ObjectDetails()
.setCommonObjectDetails(new CommonObjectDetails())
.setPinDetails(new PinDetails().setSource(FeedSourceType.FANTASIO))),
new FeedObject().setObjectId(902L).setObjectDetails(new ObjectDetails()
.setCommonObjectDetails(new CommonObjectDetails())
.setPinDetails(new PinDetails().setSource(FeedSourceType.FANTASIO)))))))
.when(mockSpy).getResultsFutureMap(any(), any(), any(), any());
....
b2p.evaluate();
}}
上午我嘲笑這個方法在錯誤的道路?
該方法實際上被調用,並沒有被嘲笑。 –