标题
雪球app抓包与mock实战
课程价值
- 掌握 mock 使用场景,基本 mock 原理
- 掌握 ssl 通信原理
- 掌握协议区别和联系(http,https,socket, websocket,tcp ,串口, visa 等)
- 掌握 charles 抓取 https 协议
- 熟练使用工具:charles 反向代理
- 使用工具实现:maplocal
大纲
- mock 使用场景
- 基本 mock 原理
- ssl 通信原理
- 协议区别和联系(http,https,socket, websocket,tcp ,串口, visa 等)
内容
mock 场景
为什么要用 mock
测试对象:数据(AT^BSN 或 1000601)
如果没有 mock ,需要人为打开装备生成的 log ,把 log 与电子流进行对比(1v1),如果不一致,测试失败(需要跟开发确认指令顺序是否正确)- 重复与繁琐,不仅了解 log ,还需要与开发进行大量沟通。
mock 是什么
怎么用 mock
- 理解传输协议
- 根据协议选择工具
- 应用层 charls , mitmproxy :http,https (网络数据传输:打开网页), websocket(通信:微信聊天)
- socket mitmproxy pysocket:粘贴剂(不属于层,是一个把理论变为现实的工具,让人们去调用)
- 传输层 mitmproxy :tcp(可靠传输),udp(不可靠)
- 传输层之下:不要测
应用
反向代理
打开 charles 的 Proxy , 点击 reverse prxies
当访问:https://127.0.0.1:8081/s?ie=utf-8&f=8&rsv_bp=1&rsv_idx=1&tn=baidu&wd=霍格沃兹测试学院
charles 会反向代理到 baidu ,搜索霍格沃兹测试学院
业务场景: 可以编写测试服务( flask ),服务根据不同响应,返回不同数据。实现对采用 https 协议的应用测试。
maplocal
搜索雪球中股票名字
右键请求,选择 maplocal ,选择本地文件(或者打开 tools , 点击 maplocal)
时长
90 分钟