测试笔记8——Charles的Breakpoints功能

前言

前面说到Charles的Map重定向功能,这里说一下Charles的Breakpoints功能。

Charles的Breakpoints功能

Breakpoints是打断点的意思,相当于开发同学的debug功能。在抓包工具Charles里面通过Breakpoints打断点修改Response数据。

使用方法
  1. 找到你想要的链接右键勾选Breakpoints功能,工具栏的断点图标就会变红;
    在这里插入图片描述
  2. 设置断点,“Proxy”->“Breakpoints”
    在这里插入图片描述
  3. 弹出Breakpoints Settings 弹窗
    在这里插入图片描述
  4. 双击Location中的想要打断点的接口,弹出Edit Breakpoints
    在这里插入图片描述
  5. 将Query中的内容删除,输入*;如果修改Request数据,就将Request勾选;如果修改Response数据,就将Response勾选;
    在这里插入图片描述
  6. 此时重新访问该接口,Charles自动跳转到Breakpoints页面
    在这里插入图片描述
  7. 此时修改Response数据,点击Edit Response,切换底部tab至Text,修改所需要的数据;
    在这里插入图片描述
### Charles 软件测试面试题 #### 断点设置与调试 在进行移动端或Web端的功能测试时,Charles作为一款强大的HTTP代理工具被广泛应用于接口级别的监控和分析。对于依赖于网络请求的应用来说,利用Charles中的断点功能可以在指定位置中断流量传输以便更细致地观察数据交换过程以及服务器响应情况。 当涉及到具体操作时,可以通过右键点击任意一条正在查看的会话记录并选择`Breakpoints...`来开启该条目下的所有后续请求/响应的拦截模式[^2]。此时开发者能够手动编辑这些消息体内的参数值甚至伪造整个返回包以模拟不同场景下客户端的行为表现形式从而验证应用程序处理异常状况的能力。 #### SSL证书安装 由于现代网站普遍采用HTTPS协议加密通信链路,因此要想让Charles正常捕获这类安全连接的数据流,则必须事先在其内部生成一份自签名CA根证书并向目标设备推送信任关系。这一过程中需要注意的是每台待测机器都需要单独完成上述配置步骤才能确保抓取到完整的交互细节而不会遗漏任何重要信息片段[^3]。 另外值得注意的一点在于某些较新的浏览器版本可能默认启用了HSTS(HTTP Strict Transport Security),这使得即使已经正确设置了SSL解密环境也可能无法成功解析部分站点发出的安全警告提示框;针对这种情况建议尝试禁用此特性后再重新发起访问动作直至确认问题得到妥善解决为止。 #### 接口性能评估 除了基本的功能性验证之外,借助Charles还可以很方便地开展API层面的压力测试工作——即通过录制典型业务流程所产生的代表性样本集进而批量回放的方式快速定位潜在瓶颈所在之处并对整体吞吐量作出合理预估。此类实践有助于提前识别出那些可能导致用户体验下降的关键因素继而在正式上线前加以优化改进措施[^4]。 ```python import subprocess def run_charles_performance_test(script_path): """运行基于Charles脚本的性能测试""" try: result = subprocess.run(['charles', '-r', script_path], check=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE) print(result.stdout.decode()) except subprocess.CalledProcessError as e: print(f"执行失败: {e.stderr.decode()}") ```
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值