测试其余Web服务时出现空指针异常

时间:2015-08-31 13:13:56

标签: java web-services rest unit-testing nullpointerexception

我在尝试测试网络服务时得到NullPointerException

我的代码:

@Path("/")
public class SubscriptionService {

    @GET
    @Produces(MediaType.APPLICATION_JSON)
    @Path("/status/{subsId}")
    public Response getSubscriptionStatus(@PathParam("subsId") int subsId) {
        return Response.status(200).entity("subscription status for id: " + subsId).build();
    }
}

测试类:

public class TestService {

    private SubscriptionService service;

    @Test
    public void testGetSubscriptionStatus() {
        final Response response = service.getSubscriptionStatus(5);

        Assert.assertEquals(200, response.getStatus());
        Assert.assertEquals("subscription status for id: 5", response.getEntity());
    }
}

此处显示错误:final Response response = service.getSubscriptionStatus(5);

有没有人知道我为什么会收到这个错误?

1 个答案:

答案 0 :(得分:1)

您永远不会初始化service。所以你得到了NPE。

变化:

private SubscriptionService service;

要:

private SubscriptionService service = new SubscriptionService();