问题描述
我正在Android上使用Retrofit,通过一系列PUT请求将大文件发送到服务。该代码有效(或似乎!),现在我想添加一些单元测试。文件传输分为多个块,并以多个请求发送。我希望我的测试捕获请求主体数据并将其全部累加,然后最后,我将验证发送的串联数据块与测试文件完全匹配。这是为了验证不存在一一对应的块边界错误或重叠以及此类情况。
我已经阅读了有关Retrofit MockWebServer的信息,但是在这种情况下,我不关心模拟/处理服务器响应-我只关心请求。
我知道我可以通过向Retrofit使用的OkHttpClient实例添加一个拦截器并自己进行收集/缓冲来完成自己的任务,但这似乎是人们之前必须做的事情,我想知道是否可能直接支持此功能的其他Mock服务器?
(非常清楚,我是在专门讨论请求而不是响应。)
解决方法
查看类似https://stackoverflow.com/a/38525843/1542667
的示例使用MockWebServer作为访问RecordedRequest的一种方式