前言
本周做的一个需求中,修改接口吐出的数据,需要查看动画效果是否正常,由于所用的web模拟工具不能完美模拟效果,需要真机实测。找到了测试指导了一下,然后查找相关资料,通过Fiddler工具,利用手机上的app进行了数据联调。
Fiddler工具很好用,也很强大,觉得大家都可以来学习一下,特此记录一下。
一、Fiddler简介
Fiddler是很好用的Web调试工具之一, 它能记录所有客户端和服务器的http和https请求。允许你监视、设置断点、甚至修改输入输出数据。Fiddler无论对开发人员或者测试人员来说,都是非常有用的工具。
二、Fiddler的工作原理
Fiddler 是以代理web服务器的形式工作的,使用代理地址:127.0.0.1,默认端口:8888。 当Fiddler退出的时候它会自动注销, 这样就不会影响别的程序。不过如果Fiddler非正常退出,这时候因为Fiddler没有自动注销,可能会造成网页无法访问。 解决的办法是重新启动下Fiddler,按照正常流程退出。
个人理解:fiddler是一个抓包工具,当客户端访问服务器会发送一个请求,此时,fiddler就处于客户端与服务器之间,当客户端发送请求时,会先经过fiddler,然后再转发到服务器;当服务器有返回数据给客户端时,也会先经过fiddler,然后数据才到达客户端。通过这种方式,fiddler就抓取到了请求和响应的整个过程。
三、手机抓包
①启动Fiddler, 打开菜单栏中的 Tools => Fiddler Options, 打开“FiddlerOptions” 对话框。
②在“Fiddler Options”对话框切换到“Connections” 选项卡,可以看到默认监听接口是:8888 。
③在本机命令行输入: ipconfig, 找到本机的ip地址。
④在手机浏览器输入电脑端的ip和fiddler监听的端口号:192.168.33.221 。
⑤然后下载Fiddler根证书,下载后进行安装。
⑥打开手机所连接的WIFI配置,注意:所连接的WIFI跟电脑需要在同一局域网中。
⑦我们可以尝试在手机浏览器打开百度页面,输入关键字——“12306”,点击搜索。可以通过Fiddler拦截对应的url,我们点击右侧面板中的【Inspectors】,可以查看该请求的请求头和响应头。目前可以看到该请求返回的是一个html页面。
对比手机端看到的页面:
四、mock数据
有时候,我们在开发的时候,由于上游接口还没开发完成,无法直接通过接口进行调用访问,希望可以通过mock数据的方式进行联调。我们可以借助Fiddler工具帮我们实现。
①创建一个txt文件,里面写上我们mock的数据,例如一个json字符串,如图所示:
②选择目标请求,并且点击“autoresponde”--》“add rule”,添加到右框中,或者鼠标左键选中并按住拖拽目标请求到右侧面板,如图所示:
同时勾选顶部的三个选项,分别表示—— 启用规则、不匹配的请求通过、启用延时 。我们可以修改右侧面板底部的【Rule Editor】,填写我们希望命中url的正则表达式。
③通过右侧面板底部的选择框,我们选中第一步完成的返回结果文件:
④我们在手机浏览器重新搜索关键字——“12306”,可以看到页面返回发生了改变,变为了我们mock的json数据:
⑤我们再回到Fiddler软件,查看目标url的请求头和响应头,可以看到返回的数据也是我们mock的json数据:
参数链接:https://www.cnblogs.com/yatou-de/p/9269118.html
https://www.cnblogs.com/lingqiang0605/p/9321094.html