web-dev-qa-db-ja.com

Spring統合フレームワークのResponseEntity <?>のJunit Mockitoテストケース

外線通話をあざけるようにしています。

 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ステートメントにはコンパイルエラーがあり、無効なタイプと見なされます。thouggrのタイプはResponseEntityです。

誰かがこの問題を解決するのを手伝ってくれませんか?

6
Jill

代わりにタイプセーフでない方法を使用できます

doReturn(r).when(requestGateway.pushNotification(any(XtifyRequest.class)));

または、モックしながらタイプ情報を削除できます

ResponseEntity r=new ResponseEntity(HttpStatus.ACCEPTED);
when(requestGateway.pushNotification(any(XtifyRequest.class))).thenReturn(r);
11
Nithish Thomas