本文只是学习笔记无任何参考意义,大神们请划走
1、抓包查看报文
常见web应用层一般为http/https协议,请求方式:get、post、put、delete、head、options、patch、connect。
请求会分为请求和返回报文,最大区别为报文行。请求一般为http方法和url地址,返回行是状态码。
测试可以通过状态码和请求值返回值判断是前端还是后端bug。一般情况下,请求参数错误是前端bug,服务器错误或返回值错误是后端bug。当然5xx一般是后端bug,4xx一般是前端bug.
各状态码含义见 HTTP 状态码 | 菜鸟教程
2、断点做接口测试,与前端逻辑测试
fiddler断点分为before requests和after responses,打开filddler,首先filter自己需要的请求,点击rlues-automatic breakpoint 选择在请求前断点还是响应后断点。请求前可通过修改请求值测试接口,响应后可通过返回值测试前端逻辑是否正确。
- 可以利用fiddler仿造数据测试前端显示分页等功能,不需要去数据库造数据那么麻烦
- 也可以替换前端成不符合前端请求时要求的响应体格式文件,看前端是怎么显示的?
3、模拟弱网,进行弱网测试
在模拟弱网前,首先确保需要访问的网站或app可以正常使用fiddler代理
- 第一步:查看customise rules中onbeforerequest方法中是否包含m_simulatemodem 修改需要的上下行速度:网络取值的算法就是 1000/下载速度 = 需要delay的时间(毫秒),比如50kb/s 需要delay200毫秒来接收数据。
- 第二步:进入点击rules-preformance,勾选simulate modem speeds
- 另外可通过自定义方法,设置上下行速度在某个区间内浮动
static function randInt(min, max) { return Math.round(Math.random()*(max-min)+min); }
使用方法例如:
-
if (m_SimulateModem) { // Delay sends by 300ms per KB uploaded. oSession["request-trickle-delay"] = ""+randInt(1,50); // Delay receives by 150ms per KB downloaded. oSession["response-trickle-delay"] = ""+randInt(1,50); }
弱网参数: