1.什么是弱网测试?
弱网测试主要就是对带宽、丢包、延时等进行模拟弱网环境。
衡量网络性能好坏的几个指标: 带宽(吞吐量):单位时间内传输的数据量,单位通常是:每秒比特数:bps。带宽反映了网络的传输能力,越大越好。 丢包:数据丢包个数=发送的数据包数-接收的数据包数。丢包反映了网络可靠性,越小越好。 时延:数据包从发送开始到接收到该数据,所耗费的时间,单位通常是ms。时延反映了网络的速度,越小越好。 抖动:指时延的变化,即两个数据包时延的差值。抖动反映了网络的稳定性,越小越好。 乱序:指接收到的数据包顺序和发送顺序不一致的次数。乱序反映了网络的稳定性,越小越好。当乱序比较严重的时候,丢包也会比较严重,所以一般都以丢包指标为主,忽略乱序指标。
2.为什么做弱网测试?
1.用户体验 使用过程中,弱网的高延迟和高丢包,在实时性要求非常高的场景,容易损失用户体验。 2.非正常情况下,出现bug概率会增加 在日常需求中,经常会遇到一些用户反馈一些无法简单复现的bug,有很大一部分的bug是由于用户自身的网络环境波动,或者是本身网络环境就较为恶劣。而服务面对这种恶劣的网络环境的健壮性不够,导致会出现一些意想不到的bug。
3.弱网的衡量指标
衡量指标要根据实际使用环境来确定,这里不方便放出公司的指标。
4.弱网测试关注点
用户体验:响应时间、页面呈现、超时文案、超时重连机制、安全及大流量风险
弱网测试:功能在高丢包高延时下的实现等
无网状态:断网功能、本地数据存储
网络切换:wifi-有线-无网及之间切换
5.弱网测试常用工具
通过设备连接到PC上进行弱网络测试,比如Fiddler,Charles,NET,Clumsy,WANem等
在专有服务器上构建弱网络WiFi,移动设备连接该WiFi进行弱网络测试,相关的技术方案有ATC、WANem等
以独立 app 的方式,为用户提供弱网络模拟服务。比如QNET,在Android设备上直接安装使用
工具名称 | 描述 | 优缺点 | 使用链接 |
---|
Fiddler | 抓包工具,PC 端安装,作为代理服务器,设置延迟参数,模拟不同的网络情况 | 只能模拟延迟,如丢包、带宽等等是无法支持的 | Fiddler | Charles | 抓包工具,PC端安装,作为代理服务器,可以支持延迟、丢包、带宽等弱网配置 | 弱网配置项只支持HTTP/HTTPS | Charles | NEWT | 微软早年推出的弱网测试工具,PC 端安装,作为代理服务器,支持延迟、丢包、带宽等弱网配置 | 在win10上按照配置步骤配置后未生效,后续未再尝试 | NEWT | Clumsy | 专门针对弱网测试的工具,PC 端安装,作为代理服务器,支持延迟、丢包、带宽等弱网配置 | 对比的这几款软件中使用最简单的软件 | Clumsy | ATC | Facebook推出,需要部署在 Linux 系统上,移动端设备通过浏览器访问就可以切换不同的网络环境,还可以同时支持多台设备连接 | 环境部署较为复杂 | ATC | WANem | 广域网模拟器,支持从光盘启动,可以运行于虚拟机上,也可以直接刷到物理设备上 | 虚拟机部署不支持上下行网络设置 | WANem | QNET | 腾讯推出app,自动化弱网测试,支持adb命令驱动,用户可以编写脚本,实现自动化弱网测试,自带真实的全球网络和弱网场景 | 仅适用于安卓 | QNET |
简单使用推荐使用Clumsy,环境部署简单,使用门槛低;要模拟完全真实环境推荐WANem,直接刷到交换机上;安卓app推荐使用QNET
|