Unit testing mockito NullPointerException

Unit testing mockito NullPointerException,unit-testing,mockito,junit4,Unit Testing,Mockito,Junit4,您好,我有以下测试,我无法让它工作,它给出了NullPointerException: 测试方法: private ResponseEntity getDefaultCart(HttpEntity<String> request, String zoomQuery) { LOG.info("Get user's default cart with zoom query" + zoomQuery); String defaultCartUrl = cortexApiUr

您好,我有以下测试,我无法让它工作,它给出了
NullPointerException

测试方法:

private ResponseEntity getDefaultCart(HttpEntity<String> request, String zoomQuery) {
    LOG.info("Get user's default cart with zoom query" + zoomQuery);
    String defaultCartUrl = cortexApiUrl + Constants.CARTS + scope + Constants.DEFAULT + Constants.ZOOM + zoomQuery;
    return baseRepository.getCall(defaultCartUrl, request);
}
private ResponseEntity getDefaultCart(HttpEntity请求,字符串zoomQuery){
LOG.info(“使用缩放查询获取用户的默认购物车”+zoomQuery);
字符串defaultCartUrl=cortexApiUrl+Constants.CARTS+scope+Constants.DEFAULT+Constants.ZOOM+zoomQuery;
返回baseRepository.getCall(defaultCartUrl,请求);
}
此方法的Junit:

@Test
public void testUpdateCart() {
    MockitoAnnotations.initMocks(this);
    cortexRepository= new CortexRepositoryImpl("https://abc.juy", "ocean", baseRepositoryImpl);
    Mockito.when(baseRepositoryImpl.createRequestHeaders("guestId")).thenReturn(httpHeaders);
    JSONObject orderDetails = createCortexCreateOrderObject("cortexCreateOrderResponse.json");
    ResponseEntity<JSONObject> entity=new ResponseEntity<JSONObject>(orderDetails,HttpStatus.ACCEPTED);
    HttpEntity<String> request = new HttpEntity<String>(httpHeaders);
    Mockito.when(baseRepositoryImpl.getCall("http://www.abc.hyh", request)).thenReturn(entity);
    cortexRepository.updateCart(updateCartRequest);
}
@测试
public void testUpdateCart(){
initMocks(this);
cortexRepository=新CortexRepositoryImpl(“https://abc.juy“,“海洋”,baseRepositoryImpl);
Mockito.when(baseRepositoryImpl.createRequestHeaders(“guestId”))。然后返回(httpHeaders);
JSONObject orderDetails=createCortexateOrderObject(“cortexateOrderResponse.json”);
ResponseEntity=新的ResponseEntity(orderDetails,HttpStatus.ACCEPTED);
HttpEntity请求=新的HttpEntity(httpHeaders);
Mockito.when(baseRepositoryImpl.getCall(“http://www.abc.hyh“,请求),然后返回(实体);
updateCart(updateCartRequest);
}
方法
getDefaultCart
正在从
updateCart
方法调用。对象
orderDetails
正在正确填充

NUllPointer在以下行给出:
baseRepository.getCall(defaultCartUrl,request)


任何建议???

我认为调用
BaseRepositoryImpl.getCall(defaultCartUrl,request)时使用的
BaseRepositoryImpl
实例不是传递给
新CortexRepositoryImpl(“https://abc.juy“,“海洋”,baseRepositoryImpl)

因此,请确保您没有在
CortexRepositoryImpl
中创建它的新实例,并且实际上正在使用传递到构造函数中的对象

如果没有
CortexRepositoryImpl
的源代码,我无法确定,但这似乎是最可能的问题