10

我有一些使用 Android Volley 提出的要求。由于侦听器正在将响应 JSON 转换为对象,因此我想测试它们以确保它们在做正确的事情。问题是,我不太了解如何进行单元测试。我确实设置了带有 JUnit 的 Robolectric,但我们将不胜感激。我将如何设置我的测试,以便我可以测试传递到请求中的 Listener 对象?

4

1 回答 1

2

看看CacheDispatcher就够了:

        Response<?> response = request.parseNetworkResponse(
                new NetworkResponse(entry.data, entry.responseHeaders));

这是创建请求响应的地方,使用抽象的 parseNetworkResponse 方法(如果您已经实现了它),然后:

mDelivery.postResponse(request, response);

如果您深入研究代码,这实际上会触发听众。其余的东西是线程相关的。我建议实施简单的测试例程,该例程采用静态 NetworkResponse,并调用 mDelivery 的 postResponse。

这实际上也意味着,你可能不会走这条路——测试调用了哪个方法(Response.success 或 Response.error)就足够了——这是你的第一个单元测试。其次,只是测试你的听众。

于 2016-02-18T22:56:54.387 回答