Mockwebserver和OkHttpIdlingResrouce连接异常

时间:2019-05-16 22:34:00

标签: android android-espresso okhttp mockwebserver

我正在编写使用Square的MockWebServer模拟服务器响应的测试工具,并使用OkHttpIdlingResource等待OkHttp完成工作,直到其余测试步骤继续。我还使用了MockWebServer调度程序,因此我可以根据路径来不同地响应某些请求。

我遇到了一个问题,该测试适用于某些Android API版本,而不适用于其他版本。

在棉花糖上,测试按预期通过。当我在Android Pie上运行时,MockWebServer会响应多个请求,但是由于某种原因,OkHttp会抛出java.net.ConnectException。

如果我在真正的Web服务器上运行了任何版本的应用程序,那么一切正常,只有在使用MockWebServer时,我才会看到此问题。

我不知道是什么原因导致的,并且日志没有显示任何有用的信息。在失败的情况下,我可以看到MockWebServer有200个成功的响应,但是由于某种原因,在一次调用中发生了ConnectException。

我在日志中看到的唯一奇怪的事情是,在记录了最后一个失败的OkHttp请求之前,记录了Espresso ViewAssertion。因此,可能是OkHttpIdlingResource表示实际上不是空闲的。

关于可能出什么问题的任何想法?

0 个答案:

没有答案