Charles特点:跨平台,半免费
安装配置总结
- 1.下载安装charles
- 2.组件介绍
主导航栏
请求导航栏
请求内容导航栏
- 3.charles代理配置
charles代理配置
charles访问控制
- 4.客户端代理配置
组件介绍
charles配置代理
proxy-proxy settings—proxies—http proxy port修改代理端口号,默认8888,点击ok
charles访问控制
用来禁止或允许客户端通过charles访问网络或服务器
客户端-Windows代理设置
1.在浏览器中输入chrome浏览器中输入chrome://setting
2.在搜索框中输入“代理”
3.点击:打开您计算机的代理设置“”
charles实战
1.问题分析
确定是前端还是后端的bug
2.https抓包
3.弱网测试
模拟弱网:
原理:是限制带宽
点击proxy -> throttle setting -> 开启弱网
可以选择是否配置指定域名:指定的话只对指定域名的接口进行弱网模拟,不指定则是针对所有。
-> 可以选择预设置的网络速度 比如:3G 4G … 也可以自定义网速
模拟丢包:reliability 设置丢包率
charles流量配置
4.断点调试
charles的断请求操作和断响应
手机请求到服务器之前 获取请求数据
服务器响应的数据 在到达手机之前 获取到 并可以更改
proxy -> breakpoints setting -> 开启开关 -> 配置接口 -> request| response
作用:用来构建异常的测试场景
1.右键接口连接,选择Breakpoints
2.在浏览器刷新对应接口的页面
3.此时会跳转到charles并显示出接口请求
4.点击edit request,修改请求的信息,点击execute
5.点击edit response
6.在数据格式栏中选择合适的显示格式,比如json
7.修改对应的数据,点击execute
8.回到浏览器查看数据应该为修改之后的response的信息
4.repeat 提交订单接口
模拟幂等性:多次的请求一个接口 返回的数据是一致的。
5.maplocal模拟本地数据
方法1:tools -> maplocal 开启开关 -> 将复制的接口url 粘贴到host中 点空白处。query参数的设置为*
-> map to 选择准备好模拟数据的json文件。
方法2:右键-最后找到maplocal
5.mapremote
map是映射 key-value
在tools -> mapremote ->开启开关 -> add配置映射
map from: 配置当前请求的协议 域名 端口 路径 参数
map to :配置要模拟的真实访问的远程请求的协议 域名 端口 路径 参数
举个例子:在当前环境无法测试,又不想发布到新的环境里去测试,针对当前测试场景下,不动这个服务,可以使用mapremote。本来是测试环境,可以映射到预发布环境,想要映射需要有接口
6.rewrite 模拟接口的响应状态码
tools ->rewrite ->开启开关 -> 添加场景->添加模拟的接口信息-> 添加模拟的状态码信息。
如何模拟接口的不同响应状态码?
1.postman的mockerserver可以模拟实现,charles rewrite功能也可以实现。