Java 使用Junit进行Jersey Restful测试
我正在用下面的方法测试一个DELETE动词,它似乎工作得很好Java 使用Junit进行Jersey Restful测试,java,junit,jersey,webresponse,Java,Junit,Jersey,Webresponse,我正在用下面的方法测试一个DELETE动词,它似乎工作得很好 @Test public void testDelete() throws Exception { WebResource webResourceTest = webResource.path("/deletesomestuff/delete").queryParam("FT","From Test"); final String responseString = webResourceTest.type(MediaT
@Test
public void testDelete() throws Exception {
WebResource webResourceTest = webResource.path("/deletesomestuff/delete").queryParam("FT","From Test");
final String responseString = webResourceTest.type(MediaType.TEXT_PLAIN).delete(String.class);
Assert.assertEquals("Request fulfilled.", responseString);
}
这将以字符串形式返回我要查找的内容。下面是实际deleteapi调用的一个片段
@DELETE
@Path("/delete")
@Produces(MediaType.TEXT_PLAIN)
public Response delete(@PathParam("/delete") String deleteString) {
<snip>
return Response.status(204).entity("Request fulfilled.").build();
}
返回一个204
谢谢 我想这应该行得通:
ClientResponse response = webResourceTest.type(MediaType.TEXT_PLAIN).delete(ClientResponse.class);
Assert.assertEquals(204, response.getStatus());
这确实会返回一个响应,但它返回的是200而不是204。我会做更多的研究,好的。这是测试中的一个问题,因为当我执行卷曲时,返回的是204。我将更新原始问题。
ClientResponse response = webResourceTest.type(MediaType.TEXT_PLAIN).delete(ClientResponse.class);
Assert.assertEquals(204, response.getStatus());