一、知识点梳理
如何定位 Bug 是前端产生还是后端产生的?
没有接口文档的时候,如何获取接口信息?
1、接口抓包需要具备的能力
代理功能:HTTP/HTTPs、SOCKS5。
请求模拟工具:拼装请求、重放请求,重复请求。
网络环境模拟:限速、超时、返回异常。
Mock:请求修改、响应修改。
Fake:用测试环境替代真实环境。
2、接口抓包原理
二、Charles 基础使用
工具准备
Charles 安装
电脑端基础配置与证书配置完成
mumu 模拟器抓包配置完成
参考帖子:https://ceshiren.com/t/topic/21956
三、charles抓包分析
抓取接口数据
Overview:接口的大体情况
Content:请求信息和响应信息
上半部分:请求,请求头信息,请求参数,cookie
下半部分:响应,响应头信息,响应体(不同格式)
Summary:响应时间
Chart:图标形式的资源情况展示
Notes:写一些记录
四、Charles 使用
1、过滤:Filter、Focus
2、重发:Repeat、Repeat Advanced
3、修改请求:Compose
4、弱网:Throttle Settings
五、Web 抓包练习
抓取雪球搜索接口数据
当有多个接口时,可以通过ctrl+f查找特定的接口,如下图
查看接口响应状态码与使用的协议版本
查看请求参数与 json 格式的响应内容
编辑请求参数,把搜索内容替换为自己的名字,重新发送请求,查看响应内容
快速过滤雪球域名的接口
六、App 抓包练习
抓取雪球搜索接口数据
查看请求参数与 json 格式的响应内容
设置重发 10 次,并发数量为 2,延迟时间为 500ms
进行弱网测试,选择弱网模式为 256 kbps
七、Mock 测试
1、什么是 Mock 测试
在测试活动中,对于某些不容易构造或者不容易获取的比较复杂的数据/场景,用一个虚拟的对象(Mock对象)来创建用于测试的测试方法。
2、Mock 测试的价值与场景
价值:
不依赖第三方数据。
节省工作量。
节省联调。
场景:
前后端数据交互。
第三方系统数据交互。
硬件设备解耦。
边界值测试。
3、使用 Charles 完成 Mock 测试
Rewrite:动态修改请求和响应中的数据;适用于全局修改或者修改内容简单的场景
Map Local:对响应体进行复杂修改
Map Remote:修改要访问的服务器地址;App 测试中,可以不用重新打包直接修改测试环境
使用雪球行情自选设置–股价提醒列表的接口。
Rewrite:
把列表中第一个股票名称改为自己的名字。
把列表中第二个股票的代码改为 hogwarts。
4、Rewrite练习
使用雪球设置热股榜列表的接口。
Rewrite:
把列表中第一个热股名称改为自己的名字。
把列表中第二个热股名称改为其他的名字。
匹配所有以.json结尾的请求,下图所示
5、Map Local练习
使用雪球设置热门新闻列表的接口。
Map Local:
把列表中第一个热股名称改为自己的名字。
把列表中第二个热股名称改为其他的名字。
1、选择要mock的接口,鼠标右键,save Response,修改响应数据
2、鼠标右键,选择Map Local,进入设置界面,自动填写接口url相关数据,选择目标的本地数据
3、Tools——Map Local,双击规则可以进入修改界面,勾选enable功能生效
4、新的响应页面
6、Map Remote练习
使用百度搜索接口。
Map Remote:
把接口重定向到搜狗接口上。
百度会展示警告弹窗,注意 Charles 中抓到的接口数据
1、选择要mock的接口,鼠标右键,选择Map Remote;
2、进入设置界面,自动填写接口url相关数据,选择目标的本地数据,填写要转发的服务器的url信息
3、Tools——Map Local,双击规则可以进入修改界面,勾选enable功能生效
文章来源:https://www.toymoban.com/news/detail-476937.html
4、新的响应页面
文章来源地址https://www.toymoban.com/news/detail-476937.html
到了这里,关于接口抓包分析与Mock实战的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!