有一个名为 mockwebserver 的库,它允许您模拟服务器响应。Github:
https ://github.com/square/okhttp/tree/master/mockwebserver
如果您使用的是 gradle,则可以添加以下依赖项:
androidTestCompile 'com.squareup.okhttp:mockwebserver:1.3.0'
一些片段来帮助:
设置模拟服务器
MockWebServer server = new MockWebServer();
添加示例响应(仅在第一次调用服务器时有效)
server.enqueue(new MockResponse().setBody("Hello World Response"));
启动服务器
server.play();
获取服务器的 url 以替换您正在使用的常规 url。
URL baseUrl = server.getUrl("/");
现在,向任何使用 BaseURL 的东西发出请求,就像调用非模拟 Web 服务一样,第一次调用该服务时,它会从上面返回响应。棘手的部分是你有确切数量的 MockResponses 排队作为你的应用程序将发出的实际请求。调试/查看代码时要小心,因为如果您单步执行代码,调试器实际上会弹出其中一个响应。
如果您无法弄清楚,这里是一个 java web 项目(在 web 和不是 web 中工作完全相同)我有一些基本示例。
https://github.com/digitalbuddha/GitPullRank