Mockito嘲笑一个Response类

met*_*eor 7 java jax-rs mockito

当我尝试模拟javax.ws.rs.core时,Response我收到一条错误消息:

无法创建JAX-RS运行时委托

为什么会这样?

 Response response = Mockito.mock(Response.class);
Run Code Online (Sandbox Code Playgroud)

但是当我尝试模拟HttpServletResponse时,没有问题!

 HttpServletResponse response1 = Mockito.mock(HttpServletResponse.class);
Run Code Online (Sandbox Code Playgroud)

小智 4

您可以尝试使用如下的虚假回复:

ResponseBuilder responseBuilder = Response.ok();
when(client.form(any(Form.class))).thenReturn(responseBuilder.entity("his is a string").build();
Run Code Online (Sandbox Code Playgroud)

在此代码片段中,“when”是一个模拟方法,responseBuilder 对象返回一个简单的字符串。