当前位置:网站首页>真香,自从用了Charles,Fiddler已经被我彻底卸载了
真香,自从用了Charles,Fiddler已经被我彻底卸载了
2022-06-27 19:36:00 【软件测试呀】
在做客户端/服务端测试时,经常需要对客户端的操作进行抓包分析,排查请求和响应数据是否符合预期。因此抓包能力是软件测试从业者的必备技能。目前行业里常用的抓包工具主要有Fiddler和Charles。本文重点讲解下Charles的基本使用。
Charles 是一款支持 HTTP 代理和抓包的网络代理软件。浏览器或APP通过 Charles 访问网络时,它可以记录并显示所有发送、接收的数据。
01安装
Charles依赖Java运行环境,本机需要先配置好jdk(具体安装配置略)
访问Charles官网:https://www.charlesproxy.com/
点击右侧下载按钮,就能下载最新版Charles,在Windows下双击安装即可。目前最新的版本是4.6.2。
02web抓包
默认情况下,启动Charles后,就能自动抓Chrome浏览器、Firefox浏览器的包,如果不能抓,请检查Charles中是否勾选了代理开关“Windows Proxy/Mac Proxy”
03常用功能
Charles主要提供两种查看封包的视图,分别名为 “Structure” 和 “Sequence”
Structure 视图将网络请求按访问的域名分类
Sequence 视图将网络请求按访问的时间排序
04请求过滤
默认情况下Charles会抓取所有的数据包,并展示在请求列表中。但是大多数情况下,我们只关系某个ip或某个域名下的包Charles提供了过滤器,帮助我们显示/排除指定的HTTP请求。
Charles有两种方式可以实现请求过滤:
方法一:
请求列表下方的Filter可以实现简单的过滤功能,输入关键字即可筛选出对应URL
方法二:
菜单栏“Proxy-Recording Settings”里,设置include(包含)和exclude(排除),可以仅显示或者不显示指定的url
05弱网测试
和Fiddler一样,Charles也提供了弱网模拟的功能,测试浏览器/APP在弱网条件的使用情况。
菜单栏里“Proxy”–>“Throttle Setting”里,Charles内置了不同的网络模式:56kbps、256kbps … 3G、4G等,来模拟不同弱网效果。还可以手动修改Download和Upload的值,模拟不同的速度。
需要注意的是,这里的网络速率值,单位是bps,对应到常用的byte/s,还需要除以8,如图中的4096kbps,实际为512kb
06请求/响应断点
如果想对某个请求进行拦截,修改请求的参数。或者修改某个请求响应中的值,可以使用Charles的断点功能。
在请求列表中,选择某个URL,右键点击“Breakpoints”,默认就给这个请求设置了请求+响应断点。进行指定的操作时,Charles就会拦截对应的请求,并支持数据修改
修改服务端返回的响应内容,比如将success修改为fail
如果想做一些更详细的的断点配置设置Breakpoint Settings

07APP抓包
和Fiddler一样,Charles也可以抓APP端的包,需要进行以下设置,ProxySetting中设置允许远程HTTP代理

电脑和手机连接同一WiFi,在手机端设置WiFi代理,指向Charles所在的ip和8888端口
最后,Charles还有很多高级功能,大家可以去官网查看文档进行学习。
房子要一层一层盖,知识要一点一点学。大家在学习过程中要好基础,多上手实操,话不多说,这里狠狠上一次干货!我熬夜整理好的各阶段(功能、接口、自动化、性能、测开)技能学习资料+实操讲解,非常适合私下里学习,比找资料自学高效多了,分享给你们。
领取关 w/x/g/z/h:软件测试小dao
敲字不易,如果此文章对你有帮助的话,点个赞收个藏来个关注,给作者一个鼓励。也方便你下次能够快速查找。
边栏推荐
- Go from introduction to actual combat -- channel closing and broadcasting (notes)
- win11桌面出現“了解此圖片”如何删除
- 图解基于AQS队列实现的CountDownLatch和CyclicBarrier
- Go从入门到实战——channel的关闭和广播(笔记)
- Express e stack - small items in array
- Gbase 8A OLAP analysis function cume_ Example of dist
- vmware虚拟机PE启动
- 01-Golang-环境搭建
- Stm32cubeide1.9.0\stm32cubemx 6.5 f429igt6 plus lan8720a, configure eth+lwip
- [LeetCode]161. 相隔为 1 的编辑距离
猜你喜欢

The create database of gbase 8A takes a long time to query and is suspected to be stuck

Go from introduction to actual combat - package (notes)

Interval DP of Changyou dynamic programming

集合代码练习

Go从入门到实战——错误机制(笔记)

语言弱点列表--CWE,一个值得学习的网站

JVM memory structure when creating objects

富文本 考试 填空题

∫(0→1) ln(1+x) / (x² + 1) dx

Go from entry to practice - dependency management (notes)
随机推荐
Gbase 8A OLAP analysis function cume_ Example of dist
Acwing周赛57-数字操作-(思维+分解质因数)
Analysis of stone merging
excel读取文件内容方法
Magic POI error in reading excel template file
How to design an elegant caching function
Let Ma Huateng down! Web3.0, hopeless
Go from introduction to actual combat - panic and recover (notes)
QT large file generation MD5 check code
快速excel导出
Interval DP of Changyou dynamic programming
Go从入门到实战——错误机制(笔记)
Go from entry to practice - multiple selection and timeout control (notes)
Slow bear market, bit Store provides stable stacking products to help you cross the bull and bear
Common methods of string class
Quick excel export according to customized excel Title Template
Stm32cubeide1.9.0\stm32cubemx 6.5 f429igt6 plus lan8720a, configure eth+lwip
Go from introduction to actual combat - package (notes)
qt base64加解密
Simulink导出FMU模型文件方法