接口测试——弱网测试
Posted 敲代码敲到头发茂密
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了接口测试——弱网测试相关的知识,希望对你有一定的参考价值。
这里写目录标题
一、什么是弱网测试?
在使用app过程中,经常会碰到网速慢,甚至网络中断的场景,影响用户体验,这种网速慢和网速中断的情况,称之为弱网
Fiddler/charles是通过延迟发送或接收数据的时间来模拟限速的。
二、弱网环境带来的问题
操作时间短
用户体验不好
非正常情况下,出现bug的可能性比较大
三、弱网测试的目的
例如:大量的用户会在地铁、隧道、电梯中使用app,在这种弱网的场景下,网络会出现延时、中断和超时等情况。
分析:App开发人员和测试人员需要针对这些场景,验证在弱网的情况下软件的处理机制,从而避免因用户体验不好,造成用户的流失。
测试工程师需要做的是:要测试产品的运行状态、处理机制、提示信息、以及网络恢复后的重连等。
弱网测试的目的是让app在任何网络下都能表现自如,让开发人员能够预估较差网络环境下的表现,提前发现问题,进行有针对性的优化。
四、弱网测试步骤
1、打开fiddler,进行设置(rules—performance—simulate Module speeds)
2、打开浏览器,输入https://www.cnblogs.com/tankxiao/
3、在fidder中找到对应的session,点击fiddlerscript
4、查找m_SimulateModem,修改数据,数据越大越慢
5、修改好数据后,点击savescript保存
6、此时simulate Module speeds 又恢复到之前的状态
7、再次进行设置(rules—performance—simulate Module speeds)
8、回到浏览器刷新页面,观察加载速度
五、代理配置
Proxy——》Proxy settings选项
六、限流设置
Bandwidth (kbps):理论网速上限
Utilisation (%):总带宽百分比
Round-trip latency (ms):请求往返延迟,客户端和服务端第一次往返通信的延迟,单位十毫秒
MTU (bytes):最大传输单元,传输的TCP数据包的最大尺寸
Reliability (%):可靠性,
fiddler进行弱网测试
fiddler模拟限速的原理
弱网测试原帖连接:http://blog.csdn.net/eleven521/article/details/19089671
我们可以通过fiddler来模拟限速,因为fiddler本来就是个代理,它提供了客户端请求前和服务器响应前的回调接口,我们可以在这些接口里 面自定义一些逻辑。Fiddler的模拟限速正是在客户端请求前来自定义限速的逻辑,此逻辑是通过延迟发送数据或接收的数据的时间来限制网络的下载速度和 上传速度,从而达到限速的效果。
他提供了一个功能,让我们模拟低速网路环境…启用方法如下:
Rules → Performances → Simulate Modem Speeds :模拟调制解调器的速度
启动fiddler需要进行如下设置:
1.设置端口号:
allow remote computers to connect “允许远程计算机连接”为设置的代理可以连接到fiddle上,必须勾选
2.重启fiddle;
3.设置模拟调制解调器的速度:
4.设置手机代理
手机代理设置“ip地址为本机的ip,端口号为之前设置的端口号(确保端口号不被占用)”
5.手动设置设置上行,下行速率,模拟网路速度的原理,每上传/下载1KB 要delay 多久…
网络取值的算法就是 1000/下载速度 = 需要delay的时间(毫秒),比如50kb/s 需要delay200毫秒来接收数据。
查找代码如下:
if (m_SimulateModem) {
//Delay sends by 300ms per KB uploaded. //每延迟300ms发送1kb的数据,也就是每1s发送3kb的数据
oSession["request-trickle-delay"] = 300
//Delay receives by 150ms per KB downloaded.
oSession["response-trickle-delay"] = 150//每延迟150ms下行1kb的数据
}
请注意,当你存档之后,原本已经勾选的SimulateModem Speeds 会被取消勾选,要记得再到Rules → Performances → Simulate Modem Speeds 勾选喔!
6.设置完成后,清空原有的log,并使用你的app进行弱网条件下的操作,
选择第一个请求和最后一个请求,可获得整个页面加载所消耗的总体时间。从条形图表中还可以分别出哪些请求耗时最多,从而对页面的访问进行访问速度优化
如下图:
不同请求耗时多少的图形表,获取那种资源耗时最大,进而进行优化:
如下图
以上是关于接口测试——弱网测试的主要内容,如果未能解决你的问题,请参考以下文章