当前位置: 首页 > news >正文

如何用fiddler进行弱网测试(工作常用篇)

弱网测试是模拟低带宽、高延迟、高丢包率、网络抖动等网络质量差的环境,对移动应用、Web 应用、物联网设备等对象进行测试,以发现性能问题、验证功能完整性、评估可靠性并优化用户体验,常借助 Charles、Fiddler 等网络模拟工具、硬件设备或移动设备模拟器来实施。

弱网测试主要关注的点为在网络情况不好的情况下,应用的响应请求时间、页面渲染呈现、接口超时提示、超时是否会重连等等,还要注意数据请求提交问题,比如说弱网情况下接口的请求响应时间较长,通过前端按钮点击是否会出现多次请求的场景,如果有,就得注意数据提交问题,不然可能会导致数据提交重复的问题出现

这里介绍两种工作中最常用的弱网测试的方法!

1. 使用Fiddler进行弱网测试

1.1 开启Fiddler的弱网功能

打开fiddler,勾选左上角Rules->Performance->Simulate Modem Speed。然后观察左边的接口请求情况,会发现此时网络速度变慢了,说明弱网功能开启了(默认情况下fiddler已设置了弱网参数)

在这里插入图片描述

1.2 弱网参数调整

这里介绍两个入口

入口1:点击左上角Rules->Customize Rules

在这里插入图片描述

入口2:从工具栏的FiddlerScript进入

在这里插入图片描述

然后下拉找到这段代码,或者可以直接通过m_SimulateModem字段检索

在这里插入图片描述

这段代码的意思是若m_SimulateModem为true,即fiddler开启的弱网模式。

oSession["request-trickle-delay"] = "300";oSession 代表当前正在处理的 HTTP 会话。request-trickle-delay 是 Fiddler 的一个会话属性,用于设置请求数据上传时的延迟时间。这里将其值设为 "300",意味着每上传 1KB 的数据,会额外增加 300 毫秒的延迟。

oSession["response-trickle-delay"] = "150";:同样,response-trickle-delay 是设置响应数据下载时的延迟时间的会话属性。将其值设为 "150",表示每下载 1KB 的数据,会额外增加 150 毫秒的延迟。

如果要模拟2G网络或3G网络,相应的调整上述两个配置即可

(以下参数提供参考)

2G网络:

oSession["request-trickle-delay"] = "1000"

oSession["response-trickle-delay"] = "500"

3G网络:

oSession["request-trickle-delay"] = "20"

oSession["response-trickle-delay"] = "10"

1.3 fiddler Capturing开关

fiddler左下脚会显示一个Capturing,当Capturing显示时,说明开启了抓包,如果不显示,则说明关闭抓包

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

这里讲这个的原因是,如果我们只想抓手机的包时,可以将Capturing关掉,此时fiddler抓的包就是手机上的了(大前提是关闭前需要确保fiddler已经能抓手机的包了),这样就能过滤掉电脑抓的包了

在这里插入图片描述

2. Chrome浏览器开发者工具弱网测试

Chrome浏览器打开开发者工具,点击Network->No throttling,可以根据需要选择快4G、慢4G、3G、在线等…还可以自定义请求速率

在这里插入图片描述

http://www.dtcms.com/a/165379.html

相关文章:

  • Qt官方案例知识点总结(拖放操作——Drag And Drop Robot )
  • 【Linux 网络】网络工具ifconfig和iproute/iproute2工具详解
  • java网络原理5
  • Linux 基础IO(上)--文件与文件描述符fd
  • python将字符串转成二进制数组
  • JVM快速入门
  • scGPT方法解读
  • (即插即用模块-特征处理部分) 四十五、(2024 TGRS) SFF 浅层特征融合模块
  • WebRtc09:网络基础P2P/STUN/TURN/ICE
  • [实战] Petalinux驱动开发以及代码框架解读
  • IBM WebSphere Application Server 7.0/8.5.5证书过期问题处理
  • firecrawl的docker安装和api调用
  • 【python】-基础语法3
  • flutter开发音乐APP(简单的音乐播放demo)
  • Android Compose 无网络状态处理全指南:从基础到高级实践
  • 家庭服务器IPV6搭建无限邮箱系统指南
  • 米壳AI:跨境电商图片翻译的“隐形革命”:当AI技术遇上全球化生意
  • 每日算法-250430
  • 高性能架构设计-分库分表
  • 2025上海车展 | 移远通信推出自研NG-eCall QuecOpen方案,助力汽车安全新标准加速落地
  • AVPro Video加载视频文件并播放,可指定视频文件的位置、路径等参数
  • 海外社交软件开发进阶:AI驱动与高可用架构的深度实践
  • 极品工具箱 1.3.7 | 多功能合一的工具箱,涵盖音乐搜索、短视频解析等特色功能
  • 电子病历高质量语料库构建方法与架构项目(临床情景理解模块篇)
  • 【综述】相位解包裹算法对比分析
  • LVGL -按键介绍 下
  • (51单片机)LCD显示红外遥控相关数据(Delay延时函数)(LCD1602教程)(Int0和Timer0外部中断教程)(IR红外遥控模块教程)
  • 大连理工大学选修课——机器学习笔记(5):EMK-Means
  • 《软件设计师》复习笔记(10.1)——算法特性、时间复杂度、递归、分治、动态规划
  • flutter 专题 六十四 在原生项目中集成Flutter