Java 测试REST资源(返回响应无效)
我试图测试一个特定的jersey资源,但是jersey客户端返回了一个响应Java 测试REST资源(返回响应无效),java,rest,jersey,jersey-2.0,dropwizard,Java,Rest,Jersey,Jersey 2.0,Dropwizard,我试图测试一个特定的jersey资源,但是jersey客户端返回了一个响应InboundJAXRResponse,而我期望的是一个OutboundJAXRResponse。我不理解这种行为 我确实使用调试器进行了调查,资源按预期返回了一个outboundjaxrssresponse,这意味着jersey客户端正在某处进行包装/转换,但我不明白为什么 如果我做得不对,你能告诉我一个比较反应的好方法吗 我正在使用dropwizard @Test public void itShouldRetrie
InboundJAXRResponse
,而我期望的是一个OutboundJAXRResponse
。我不理解这种行为
我确实使用调试器进行了调查,资源按预期返回了一个outboundjaxrssresponse
,这意味着jersey客户端正在某处进行包装/转换,但我不明白为什么
如果我做得不对,你能告诉我一个比较反应的好方法吗
我正在使用dropwizard
@Test
public void itShouldRetrieveListOfComputations() {
List<Computation> computations = new ArrayList<Computation>();
computations.add(new Computation("name1", "description1", "expression1"));
computations.add(new Computation("name2", "description2", "expression2"));
when(computationDAO.findAll()).thenReturn(computations);
Response expected = Response.ok(computations).build();
assertThat(resource.client().target("/computations").request().get()).isEqualTo(expected);
verify(computationDAO).findAll();
}
Response.ok(计算).build()代码>创建Jersey用于发送到客户端的传出响应。你不能真的用它来比较来自客户端调用的传入响应。它们是抽象类的两种不同实现
这是我通常验证响应的方式:
Response response = resource.client().target("/computations").request().get(Response.class);
assertThat( response.getStatusInfo.getFamily() ).isEqualTo( Response.Status.Family.Success );
assertThat( response.getMediaType() ).isEqualTo( MediaType.APPLICATION_JSON_TYPE );
assertThat( response.readEntity(new GenericType<List<Computation>>() {}) ).isEqualTo( computations );
Response-Response=resource.client().target(“/computations”).request().get(Response.class);
assertThat(response.getStatusInfo.getFamily()).isEqualTo(response.Status.Family.Success);
assertThat(response.getMediaType()).isEqualTo(MediaType.APPLICATION\u JSON\u TYPE);
assertThat(response.readEntity(new-GenericType(){})).isEqualTo(计算);
响应.ok(计算).build()代码>创建Jersey用于发送到客户端的传出响应。你不能真的用它来比较来自客户端调用的传入响应。它们是抽象类的两种不同实现
这是我通常验证响应的方式:
Response response = resource.client().target("/computations").request().get(Response.class);
assertThat( response.getStatusInfo.getFamily() ).isEqualTo( Response.Status.Family.Success );
assertThat( response.getMediaType() ).isEqualTo( MediaType.APPLICATION_JSON_TYPE );
assertThat( response.readEntity(new GenericType<List<Computation>>() {}) ).isEqualTo( computations );
Response-Response=resource.client().target(“/computations”).request().get(Response.class);
assertThat(response.getStatusInfo.getFamily()).isEqualTo(response.Status.Family.Success);
assertThat(response.getMediaType()).isEqualTo(MediaType.APPLICATION\u JSON\u TYPE);
assertThat(response.readEntity(new-GenericType(){})).isEqualTo(计算);
Response response = resource.client().target("/computations").request().get(Response.class);
assertThat( response.getStatusInfo.getFamily() ).isEqualTo( Response.Status.Family.Success );
assertThat( response.getMediaType() ).isEqualTo( MediaType.APPLICATION_JSON_TYPE );
assertThat( response.readEntity(new GenericType<List<Computation>>() {}) ).isEqualTo( computations );