- 编写目的
- 基于测试维度,使用抓包工具的作用
- 基于测试维度,对谷歌浏览器开发这工具F12原理及使用的讲解
- Fiddler常见操作讲解
- 测试使用开发者工具、抓包工具的目的
- 查看隐藏字段。
- 了解协议内容,以便展开接口测试和性能测试。
- 检查数据加密。
- 定位bug原因。
- 造测试数据。
- 模拟场景,如弱网环境、手机样式切换等。
- 元素定位,元素修改,以便展开UI自动化测试以及检查前端兼容性问题。
- 拦截请求,篡改数据并请求
(注:具体场景会在工具使用说明中讲解)
- Fiddler常见操作
(抓包工具原理图)
正常来说接口请求的交互主要是client端与server端之间的交互,而抓包工具以代理client端的形式介入进来插在中间,client端的request以及server端的response都会经过fiddler的手再出去。
1.模拟弱网
为什么要做弱网测试?
实际的客户现场可能网络不稳定或者网速低,恶劣的网络环境会导致出现一些bug,影响用户体验甚至某些服务不可用。而公司内部的研发环境网络通常比较顺畅,难以复现这种bug。要解决这种问题,就需要制造弱网络的环境进行测试、复现并修复问题。
2.手机代理抓包
fiddler打开tools列表下的options,设置号本机fiddler对外端口,选择”Allow remote computers to connect“。
获取计算机的ip,cmd输出ipconfig获取。
手机通过连wifi实现与计算机在同一局域网下,或者通过USB/网络共享的方式把手机网络共享给计算机。手机在wifi设置栏选择手动代理并将前面获取到的ip、设置的端口输入进去并保存。
3.拦截接口请求/返回
web端拦截接口请求或返回,常常可以用来验证loading图标样式等。
fiddler打开rules列表下Automatic Breakpoints选择Before Requests设置断点。
1)before request。也就是发送请求之前,Fiddler代理中转之前,这时可以修改请求的数据。
2)after response。也就是服务器响应之后,但是在Fiddler将响应中转给客户端之前。这时可以修改响应的结果。
3)如何消除命令呢?点击Rules->Automatic Breakpoint->Disabled
4.篡改接口信息
篡改接口请求往往可用作接口测试,或者进行渗透测试。接口测试修改参数值验证非枚举值的情况或参数缺失等场景。渗透测试可以验证越权的场景,也可以修改查询关键参数的值 ' or '1=1 ,以此修改sql语句入参获取全量数据。
原理:先拦截再修改再请求,同上3拦截接口,并手动篡改接口信息(如果配置了请求超时的要注意)
①临时修改请求 即在fiddler中执行Inspectors->WebForms,修改请求变量参数后执行Run to Completion,服务器返回新的请求结果 ②永久性修改请求 1)命令行设置修改规则,修改请求:urlreplace 旧请求值 新请求值 fiddler命令行输入:urlreplace uuid=103 uuid=105 其中uuid是请求参数,输入命令后回车即可,新的请求设置成功,除非释放请求,否则请求值不变,释放请求命令urlreplace 2)脚本中修改规则,打开脚本方式:fiddler执行Rules->Customize Rules
5.抓https的请求
配置证书
6.fiddler常见命令的使用
Clear、stop、start等
更多推荐
基于测试维度,讲谷歌浏览器哦开发者工具和抓包工具,下篇
发布评论