项目实战
接口测试抓包与 mock
预习准备
- 提前先预习完以下相关的知识,再开始本章节的学习。
- 安装 Charles
- 下载地址
- 提取码:
itxn
- 具体文件位置:
- windows:
windows
->接口相关
->charles
- mac:
mac
->接口相关
->chales
- windows:
专题课 | 阶段 | 章节 | 上课地址 |
---|---|---|---|
接口测试 | L1 | 接口测试价值与体系 | 录播地址 |
接口测试 | L1 | 常见的接口协议 | |
接口测试 | L2 | 抓包工具 charles | |
接口测试 | L2 | 【实战】App 抓包实战练习 | |
接口测试 | L2 | 【实战】接口测试实战练习 | |
接口测试 | L3 | 弱网测试 | |
接口测试 | L3 | mock 的价值与意义 | |
接口测试 | L3 | 【实战】mock 实战练习 |
课程目标
- 掌握常用抓包工具 Charles。
- 掌握接口手工 mock 技术。
- L1 接口协议与接口测试
- L2 常用抓包工具
- L3 Mock 工具使用
- L4 Mock 工具与定制化
知识点总览
需求说明
- 雪球
- C 端金融类型产品,国内最火的投资者社区之一。
- 提供咨询获取、数据查询和交易服务等功能。
- 其主要业务功能为精华帖、行情咨询查看、股票基金交易。
- 需求:
- 完成雪球 Web 产品与 App 产品接口抓包分析。
- 完成雪球 Mock 测试。
实战思路
实战:Charles 工具安装配置
接口抓包需要具备的能力
- 代理功能:HTTP/HTTPs、SOCKS5。
- 请求模拟工具:拼装请求、重放请求,重复请求。
- 网络环境模拟:限速、超时、返回异常。
- Mock:请求修改、响应修改。
- Fake:用测试环境替代真实环境。
推荐工具
- Charles:开发/测试工程师必备。
- mitmproxy:测试开发工程师必备。
- ZAP:测试工程师安全测试工具。
- BurpSuite:黑客必备渗透测试工具。
- Fiddler:跨平台支持不好,不推荐。
- Postman:代理功能太弱,不推荐。
Charles 安装配置
实战:Charles 基础使用
- Charles 基础使用
- 抓包分析接口数据
- 过滤:Filter、Focus
- 弱网:Throttle Settings
- Charles 完成弱网测试
实战:Charels 完成 Mock 测试
功能 | 使用场景 |
---|---|
Rewrite | 动态修改请求和响应中的数据 适用于全局修改或者修改内容简单的场景 |
Map Local | 对响应体进行复杂修改 |
Map Remote | 修改要访问的服务器地址 App 测试中,可以不用重新打包直接修改测试环境 |
课后作业
- 电脑端抓包
- 抓取雪球 Web 端搜索接口数据
- 查看接口响应状态码与使用的协议版本
- 查看请求参数与 json 格式的响应内容
- 快速过滤雪球域名的接口
- 进行弱网测试,选择弱网模式为 256 kbps
- App 抓包
- 抓取雪球 app 自选--行情--A 股--涨幅榜股票列表的接口数据
- 查看请求参数与 json 格式的响应内容
- 进行弱网测试,选择弱网模式为 256 kbps
- mock 测试
- 使用雪球 app 自选--行情--A 股--涨幅榜股票列表的接口数据
- Rewrite: 1. 把列表中第一个股票名称改为自己的名字。 2. 把列表中第二个股票的代码改为 hogwarts。
- Map Local: 1. 把列表中第一个股票名称改为自己的名字。 2. 把列表中第二个股票的代码改为 hogwarts。 3. 把列表中第三支股票的 type 改为 30。
总结
- Charles 工具安装配置
- Charels 完成 Mock 测试