接口抓包分析与Mock实战

接口抓包分析与Mock实战_第1张图片


这里写目录标题

  • 一、知识点梳理
    • 1、接口抓包需要具备的能力
    • 2、接口抓包原理
  • 二、Charles 基础使用
  • 三、charles抓包分析
  • 四、Charles 使用
    • 1、过滤:Filter、Focus
    • 2、重发:Repeat、Repeat Advanced
    • 3、修改请求:Compose
    • 4、弱网:Throttle Settings
  • 五、Web 抓包练习
  • 六、App 抓包练习
  • 七、Mock 测试
    • 1、什么是 Mock 测试
    • 2、Mock 测试的价值与场景
    • 3、使用 Charles 完成 Mock 测试
    • 4、Rewrite练习
    • 5、Map Local练习
      • 1、选择要mock的接口,鼠标右键,save Response,修改响应数据
      • 2、鼠标右键,选择Map Local,进入设置界面,自动填写接口url相关数据,选择目标的本地数据
      • 3、Tools——Map Local,双击规则可以进入修改界面,勾选enable功能生效
      • 4、新的响应页面
    • 6、Map Remote练习
      • 1、选择要mock的接口,鼠标右键,选择Map Remote;
      • 2、进入设置界面,自动填写接口url相关数据,选择目标的本地数据,填写要转发的服务器的url信息
      • 3、Tools——Map Local,双击规则可以进入修改界面,勾选enable功能生效
      • 4、新的响应页面

一、知识点梳理

如何定位 Bug 是前端产生还是后端产生的?
没有接口文档的时候,如何获取接口信息?

1、接口抓包需要具备的能力

代理功能:HTTP/HTTPs、SOCKS5。
请求模拟工具:拼装请求、重放请求,重复请求。
网络环境模拟:限速、超时、返回异常。
Mock:请求修改、响应修改。
Fake:用测试环境替代真实环境。

2、接口抓包原理

接口抓包分析与Mock实战_第2张图片

二、Charles 基础使用

工具准备

Charles 安装
电脑端基础配置与证书配置完成
mumu 模拟器抓包配置完成

参考帖子:https://ceshiren.com/t/topic/21956

三、charles抓包分析

抓取接口数据

Overview:接口的大体情况
Content:请求信息和响应信息
上半部分:请求,请求头信息,请求参数,cookie
下半部分:响应,响应头信息,响应体(不同格式)

Summary:响应时间
Chart:图标形式的资源情况展示
Notes:写一些记录
接口抓包分析与Mock实战_第3张图片

四、Charles 使用

1、过滤:Filter、Focus

接口抓包分析与Mock实战_第4张图片

2、重发:Repeat、Repeat Advanced

接口抓包分析与Mock实战_第5张图片

3、修改请求:Compose

接口抓包分析与Mock实战_第6张图片

4、弱网:Throttle Settings

接口抓包分析与Mock实战_第7张图片

五、Web 抓包练习

抓取雪球搜索接口数据
接口抓包分析与Mock实战_第8张图片
当有多个接口时,可以通过ctrl+f查找特定的接口,如下图

接口抓包分析与Mock实战_第9张图片

接口抓包分析与Mock实战_第10张图片

查看接口响应状态码与使用的协议版本
接口抓包分析与Mock实战_第11张图片

查看请求参数与 json 格式的响应内容
接口抓包分析与Mock实战_第12张图片

编辑请求参数,把搜索内容替换为自己的名字,重新发送请求,查看响应内容
接口抓包分析与Mock实战_第13张图片

快速过滤雪球域名的接口
接口抓包分析与Mock实战_第14张图片

六、App 抓包练习

抓取雪球搜索接口数据
接口抓包分析与Mock实战_第15张图片

查看请求参数与 json 格式的响应内容
接口抓包分析与Mock实战_第16张图片

设置重发 10 次,并发数量为 2,延迟时间为 500ms
接口抓包分析与Mock实战_第17张图片
接口抓包分析与Mock实战_第18张图片

进行弱网测试,选择弱网模式为 256 kbps

接口抓包分析与Mock实战_第19张图片

七、Mock 测试

1、什么是 Mock 测试

在测试活动中,对于某些不容易构造或者不容易获取的比较复杂的数据/场景,用一个虚拟的对象(Mock对象)来创建用于测试的测试方法。
接口抓包分析与Mock实战_第20张图片

2、Mock 测试的价值与场景

价值:
不依赖第三方数据。
节省工作量。
节省联调。

场景:
前后端数据交互。
第三方系统数据交互。
硬件设备解耦。
边界值测试。

接口抓包分析与Mock实战_第21张图片

3、使用 Charles 完成 Mock 测试

Rewrite:动态修改请求和响应中的数据;适用于全局修改或者修改内容简单的场景
Map Local:对响应体进行复杂修改
Map Remote:修改要访问的服务器地址;App 测试中,可以不用重新打包直接修改测试环境

使用雪球行情自选设置–股价提醒列表的接口。
Rewrite:
把列表中第一个股票名称改为自己的名字。
把列表中第二个股票的代码改为 hogwarts。

4、Rewrite练习

使用雪球设置热股榜列表的接口。
Rewrite:
把列表中第一个热股名称改为自己的名字。
把列表中第二个热股名称改为其他的名字。

接口抓包分析与Mock实战_第22张图片
接口抓包分析与Mock实战_第23张图片

接口抓包分析与Mock实战_第24张图片
接口抓包分析与Mock实战_第25张图片
匹配所有以.json结尾的请求,下图所示
接口抓包分析与Mock实战_第26张图片
接口抓包分析与Mock实战_第27张图片
接口抓包分析与Mock实战_第28张图片

5、Map Local练习

使用雪球设置热门新闻列表的接口。
接口抓包分析与Mock实战_第29张图片

Map Local:
把列表中第一个热股名称改为自己的名字。
把列表中第二个热股名称改为其他的名字。

1、选择要mock的接口,鼠标右键,save Response,修改响应数据

2、鼠标右键,选择Map Local,进入设置界面,自动填写接口url相关数据,选择目标的本地数据

接口抓包分析与Mock实战_第30张图片

3、Tools——Map Local,双击规则可以进入修改界面,勾选enable功能生效

接口抓包分析与Mock实战_第31张图片

4、新的响应页面

接口抓包分析与Mock实战_第32张图片

6、Map Remote练习

使用百度搜索接口。
Map Remote:
把接口重定向到搜狗接口上。
百度会展示警告弹窗,注意 Charles 中抓到的接口数据

接口抓包分析与Mock实战_第33张图片

1、选择要mock的接口,鼠标右键,选择Map Remote;

2、进入设置界面,自动填写接口url相关数据,选择目标的本地数据,填写要转发的服务器的url信息

接口抓包分析与Mock实战_第34张图片

3、Tools——Map Local,双击规则可以进入修改界面,勾选enable功能生效

接口抓包分析与Mock实战_第35张图片

4、新的响应页面

接口抓包分析与Mock实战_第36张图片

你可能感兴趣的:(接口测试,前端,https,http)