我正在尝试模拟外部呼叫。
ResponseEntity<?> httpResponse = requestGateway.pushNotification(xtifyRequest);
requestGateway是一个接口。
public interface RequestGateway
{
ResponseEntity<?> pushNotification(XtifyRequest xtifyRequest);
}
下面是我要做的测试方法。
@Test
public void test()
{
ResponseEntity<?> r=new ResponseEntity<>(HttpStatus.ACCEPTED);
when(requestGateway.pushNotification(any(XtifyRequest.class))).thenReturn(r);
}
上面的when语句中有一个编译错误,说它是一个无效的类型。即使r是ResponseEntity类型
谁能帮我解决这个问题?
您可以使用类型不安全的方法
doReturn(r).when(requestGateway.pushNotification(any(XtifyRequest.class)));
或者您可以在mock
时删除类型infoResponseEntity r=new ResponseEntity(HttpStatus.ACCEPTED);
when(requestGateway.pushNotification(any(XtifyRequest.class))).thenReturn(r);