接口测试——fiddler的断点
一、断点的基础理论
1、为什么要打断点?
接口测试可以不需要管前端的,主要测后端的功能
2、断点的作用
(1)开发人员,调试,出错后在某个位置打断点调试代码;
(2)测试人员,测试,绕过前端的限制,测试后端的反应;
(3)测试人员,构造数据,设置断点可篡改请求和返回的数据包。根据测试的不同场景,有时需要在测试过程中更改请求、或者更改响应内容,从而达到最终的测试目标
案例:比如一个购买的金额输入框,输入框前端做了限制100-1000,那么我们测试的时候,需要测试小于100的情况下。很显然前端只能输入大于100的。这是我们可以先抓到接口,修改请求参数,绕过前端,传一个小于100的数,检查服务端的功能是否OK;
二、断点的两种方式
1、全局断点和单个断点
(a)before response:这个是打在request请求的时候,未到达服务器之前 (before之前)
(b)after response:也就是服务器响应之后,在Fiddler将响应传回给客户端之前。
- 命令行方式:
 
(a)修改Request:bpu (拦截发给指定服务器的请求)
(a1)清除断点拦截:bpu
(b)修改Response:bpafter(拦截指定服务器返回的session)
(b1)清除断点拦截:bpafter
2、全局断点
(1)全局断点就是中断fiddler捕获的所有请求,先设置下,点击rules-> automatic breakpoint ->before requests
- 请求点断点
 

- 请求后断点
 

3、单个断点
(a)单个接口请求前断点命令: 请求前命令:bpu+url 取消断点:bpu


(b)单个接口请求后断点命令: 请求前命令:bpafter+url 取消断点:bpafter


总结:
1、全局断点和单个接口断点
2、请求前断点和请求后断点
3、请求前断点:修改请求前的参数,请求头和请求体
4、请求后断点:修改响应的参数,响应头和响应体
5、单个接口请求前断点命令: 请求前命令:bpu+url 取消断点:bpu
6 、单个接口请求后断点命令: 请求前命令:bpafter+url 取消断点:bpafter
- 全局断点:
 
(1)请求前 :rules ===》automatic breakpoints =====》before responses(请求前断点)
(2)请求后 :rules ===》automatic breakpoints =====》after responses (请求后断点)
一、弱网测试
1、模拟弱网环境 打开Fiddler,Rules->Performance->勾选 Simulate Modem Speeds,勾选之后访问网站会发现网络慢了很多

2、Fiddler弱网的原理 Rules—>Cutomize Rules打开CustomRules.js 文档

在文件中搜索关键字,m_SimulateModem

分析:
- 上传速度:1KB/300ms=1KB/0.3s=3.33KB/s下载速度:1KB/150ms=1KB/0.15s=6.67KB/s首先来判断m_SimulateModem是否为true,也就是是否设置了弱网模式。
 - 如果为弱网模式。则分析代码oSession[“request-trickle-delay”] = “300”; 注释的也很明白,Delay sends by 300ms per KB uploaded.上传1KB需要300ms,转化一下上传速度:1Kb/0.3s = 10/3(KB/s)
 - 如果你想设置上传的速度为50KB/s,你则需要设置Delay 时间为 20ms
 - 同样的方法,也可以限制上传的速度,调整oSession[“response-trickle-delay”]
 
3、2G网络:上行延迟时间为2962ms,下行延迟时间为833ms
例如,电信3G的上行延迟时间为4.34ms,下行延迟时间为2.52ms;移动3G的上行延迟时间为20.8ms,下行延迟时间为2.79ms;联通3G的上行延迟时间为1.35ms,下行延迟时间为1ms。
                    
                
                
            
        
浙公网安备 33010602011771号