使用Fiddler进行弱网测试

news2024/12/25 10:16:46

测试APP、web经常需要用到弱网测试,也就是在信号差、网络慢的情况下进行测试。我们自己平常在使用手机APP时,在地铁、电梯、车库等场景经常会遇到会话中断、超时等情况,这种就属于弱网。

普通的弱网测试可以选择第三方工具对带宽、丢包、延时等模拟弱网环境。

这里带大家一起解锁Fiddler弱网模拟功能!

操作步骤

说明:如果你是模拟手机APP的弱网,那么你需要确保Fiddler能够抓到手机APP的包。

步骤1:在Fiddler中启动弱网

打开Fiddler→Performance→勾选Simulate Modem Speed,勾选之后你会发现网络速度已经慢下来了,因为系统里有预设的网络参数值。

在这里插入图片描述
步骤2:设置网络参数

(1)打开Fiddler→Customize Rules;

在这里插入图片描述
(2)找到下面框出的代码,在这里设置弱网参数值;

在这里插入图片描述
解析:如果m_SimulateModem为True,也就是fiddler开启了弱网模式,那么上传1KB的内容 需要300ms(转化后的上传速度为1KB/0.3s=3.3KB/s),下载1KB内容需要150ms(转化后的下载速度为1KB/0.15s=6.6KB/s)。

如果要模拟2G网络, 上传下载配置如下:

oSession["request-trickle-delay"] = "3000";

oSession["response-trickle-delay"] = "1500";

如果要模拟3G网络,上传下载配置如下:

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

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

手机APP使用SIM卡数据流量的话,要考虑不同的运营商:联通、移动、电信,根据上行速率、下载速率来设置参数。

计算公式为:[1/(上或下行速率/8)] x 1000

注意:1KB=8kb

步骤3:设置完成后,保存。

这时步骤1勾选的Simulate Modem Speed会被取消勾选,需要重新勾选一下再进行测试。

备注:

一般浏览器开发者工具(推荐Chrome)自带模拟弱网的功能。

浏览器打开开发者工具(快捷键F12);选择Network栏,根据需求选择网络状态,比如在线、3G、2G、离线等。

在这里插入图片描述

弱网测试关注点

弱网测试主要关注网络状况不好时,应用的响应时间、页面呈现、超时提示、超时重连等等。我们测试过程中尤其要注意数据提交的问题,一般前端会进行超时限制,超出多少秒抛出异常提示,此时数据是不应该提交成功的。我之前测试过的软件就出现过,弱网时,数据可以多次提交成功的情况。

总结:

感谢每一个认真阅读我文章的人!!!

作为一位过来人也是希望大家少走一些弯路,如果你不想再体验一次学习时找不到资料,没人解答问题,坚持几天便放弃的感受的话,在这里我给大家分享一些自动化测试的学习资源,希望能给你前进的路上带来帮助。

文档获取方式:

加入我的软件测试交流群:1007119548免费获取~(同行大佬一起学术交流,每晚都有大佬直播分享技术知识点)

这份文档,对于想从事【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!

以上均可以分享,只需要你搜索vx公众号:程序员雨果,即可免费领取

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1407529.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

代码随想录算法训练营第29天(回溯算法05 | * 491.递增子序列 * 46.全排列 * 47.全排列 II

回溯算法part05 491.递增子序列解题思路与 90.子集II 不同的点回溯三部曲 46.全排列解题思路遇到的难点思考 47.全排列 II解题思路注意点拓展需要加深理解的点(需复习 小总结 491.递增子序列 本题和大家刚做过的90.子集II非常像,但又很不一样&#xff0c…

简单实现网络编程

1. 前置知识 在学习网络编程前,我们需要先了解一些前置知识 1.1 客户端和服务器 在网络编程中,客户端和服务器是两个关键的角色。 客户端是发起连接并向服务器发送请求的一方。客户端通常是一个应用程序或设备,通过与服务器建立连接&…

线性表--链表--带头双向循环链表

目录 1.什么是带头双向循环链表? 2.实现增删查改功能: 2.1使用链表前必须对头节点初始化 2.2尾插 2.3尾删 2.4头插 2.5头删 2.8查找 2.7指定位置插入 2.8指定位置删除 2.9改变数据 ​编辑 2.10打印 2.11销毁 3.代码 1.什么是带头双向循环链表&…

docker 基础手册

文章目录 docker 基础手册docker 容器技术镜像与容器容器与虚拟机docker 引擎docker 架构docker 底层技术docker 二进制安装docker 镜像加速docker 相关链接docker 生态 docker 基础手册 docker 容器技术 开源的容器项目,使用 Go 语言开发原意“码头工人”&#x…

【C++练级之路】【Lv.7】【STL】vector类的模拟实现

快乐的流畅:个人主页 个人专栏:《C语言》《数据结构世界》《进击的C》 远方有一堆篝火,在为久候之人燃烧! 文章目录 引言一、成员变量二、默认成员函数2.1 constructor2.2 destructor2.3 copy constructor2.4 operator 三、迭代器…

Vue3+TS+dhtmlx-gantt实现甘特图

实现样式 因为只做展示,所以实现很简单 实现功能 自定义列头增加斑马线,实际结束时间(自定义实现)自定义进度展示,根据层级让进度背景颜色变浅marker标记今天自定义提示框内容 实现 import { gantt } from "d…

某顺cookie逆向

目标网站:aHR0cHM6Ly9xLjEwanFrYS5jb20uY24v 这个网站是对cookie进行反爬虫的,可以看到cookie中有一个加密参数v 二、分析参数 可以使用hook方法,来hook住cookie中v生成的位置,可以直接在控制台中输入hook函数 (function () {use strict;v…

【详细解释深度学习图像分类检测评价指标】准确率Accuracy、精确率Precision、召回率Recall、mAP等(一文搞懂,建议收藏)

前言: 😊😊😊欢迎来到本博客😊😊😊 🌟🌟🌟 本专栏主要是记录工作中、学习中关于AI(Deep Learning)相关知识并分享。 😊😊&#x1f…

Parallels Desktop 19 mac 虚拟机软件 兼容M1 M2

Parallels Desktop 19 for Mac 是一款适用于 macOS 的虚拟机软件。无需重启即可在 Mac 上运行 Windows、Linux 等系统,具有速度快、操作简单且功能强大的优点。包括 30 余种实用工具,可简化 Mac 和 Windows 上的日常任务。 软件下载:Parallel…

大模型时代的计算机系统革新:更大规模、更分布式、更智能化

编者按:2023年是微软亚洲研究院建院25周年。借此机会,我们特别策划了“智启未来”系列文章,邀请到微软亚洲研究院不同研究领域的领军人物,以署名文章的形式分享他们对人工智能、计算机及其交叉学科领域的观点洞察及前沿展望。希望…

搭建网站使用花生壳的内网穿透实现公网访问

目录 一 搭建网站 二 使用花生壳进行内网穿透 1、创建内网映射 2、linux系统安装花生壳客户端 3、重新打开浏览器,输入http://b.oray.com,完成账户登录,激活(SN登录) 一 搭建网站 准备工作: [rootse…

主播产品对比话术

—、价格对比 主播产品A︰这款产品定价相对较高,但是其品质和功能都是一流的,对于追求高端体验的消费者来说,物有所值。 主播产品B∶这款产品的价格相对较低,性价比很高,对于预算有限的消费者来说,是个不…

基于Java SSM框架现图书馆借阅管理系统项目【项目源码+论文说明】

基于java的SSM框架实现图书馆借阅管理系统演示 摘要 以往的图书馆管理事务处理主要使用的是传统的人工管理方式,这种管理方式存在着管理效率低、操作流程繁琐、保密性差等缺点,长期的人工管理模式会产生大量的文本借书与文本数据,这对事务的…

控制项目风险

一、风险预算 暴雪公司经理艾莉森,暴雪公司是一家小型工业企业,该公司的高管为了降低生产成本,决定搬迁工厂。项目经理明白实际情况与初始计划之间常常会有很大的出入。项目经理需要事先为一些事情做好准备,并在项目运作或预算方面…

Vue基础-Computed-Watch

一、computed计算属性使用 1.复杂data的处理方式 我们知道,在模板中可以直接通过插值语法显示一些data中的数据。 但是在某些情况,我们可能需要对数据进行一些转化后再显示,或者需要将多个数据结合起来进行显示; 比如我们需要…

ORA-12528: TNS: 监听程序: 所有适用例程都无法建立新连

用了网上的办法: 1、修改listener.ora的参数,把动态的参数设置为静态的参数,红色标注部分 位置D:\oracle\product\10.2.0\db_1\NETWORK\ADMIN SID_LIST_LISTENER (SID_LIST (SID_DESC (SID_NAME PLSExtProc) (ORACLE_HOME D:\oracle\produ…

微信小程序(十)表单组件(入门)

注释很详细&#xff0c;直接上代码 上一篇 新增内容&#xff1a; 1.type 属性指定表单类型 2.placeholder 属性指定输入框为空时的占位文字 源码&#xff1a; form.wxml <!-- 提前准备好的布局结构代码 --> <view class"register"><view class"…

【LangChain学习之旅】—(10) 用RouterChain确定客户意图

【【LangChain学习之旅】—&#xff08;10&#xff09; 用RouterChain确定客户意图 任务设定整体框架具体步骤如下&#xff1a; 具体实现构建提示信息的模板构建目标链 Reference&#xff1a;LangChain 实战课 任务设定 首先&#xff0c;还是先看一下今天要完成一个什么样的任…

Pyro —— DOP Nodes

目录 Smoke Object —— 创建smoke对象及相关场 Smoke Solver —— Smoke解算器 Color Relationships Advanced Pyro Solver —— Pyro解算器 Smoke Object (Sparse) —— 创建smoke对象及相关场 Smoke Solver (Sparse) —— Sparse Smoke解算器 Simulation Advanced …

[足式机器人]Part2 Dr. CAN学习笔记- 最优控制Optimal Control Ch07

本文仅供学习使用 本文参考&#xff1a; B站&#xff1a;DR_CAN Dr. CAN学习笔记 - 最优控制Optimal Control Ch07-1最优控制问题与性能指标 1. 最优控制问题与性能指标2. 动态规划 Dynamic Programming2.1 基本概念2.2 代码详解2.3 简单一维案例 3. 线性二次型调节器&#xff…