fiddler是位于客户端和服务器端的HTTP代理,也是目前最常用的http抓包工具之一。它能够记录客户端和服务器之间的所有HTTP请求,可以针对特定的HTTP请求,分析请求数据、设置断点、调试web应用、修改请求数据,甚至可以修改服务器返回数据,功能非常强大,是web调试的利器。
一 、抓包 :fiddler初始是只能抓取hppt协议的包,hppts是抓取不了的,所以就需要对fiddler进行设置。
1、点击工具(tools),打开选项(options...)界面
2、打开HTTPS界面,把“捕获HTTPS连接”“解密HTTPS通信"勾选上”忽略服务器...“可选可不选。
3、点击动作导出证书。
4、关闭fiddler,在fiddler进行设置后,fiddler需要关闭重启才可以生效。
二、打断点:在测试过程中有时需要对请求或响应进行拦截并修改传输的数据测试数据库保存数据的类型格式,这里就需要用到打断点功能了,具体步骤如下:
1、简单的打断点在规则(runles)--automatic breakpoints 进行选择即可,before...为在请求之前,
after...为请求之后,disabled 为不打断点。
2、数据修改完后点击 run to completion 释放请求。
3、命令行打断点:
bpu xxx :请求前打断xxx域名。
bpafter xxx:请求后打断xxx域名。
bps xxx:中断 HTTP 响应状态为指定字符的全部 session 响应。
bpv xxx:中断指定请求方式的全部 session 响应。
bpm xxx:中断指定请求方式的全部 session 响应、、同于 bpv xxx。
bpu xxx:与bpafter类似。
三、手机抓包
1、设置fiddler连接选项,端口号一般不用动,把允许远程计算机连接勾选上,下面两个确认也是勾选的状态。
2、手机连上电脑所在的无线网络。
3、用手机自带的浏览器搜索:电脑IP:加上fiddler端口号,如192.168.0.109:8888
4、下载证书点击网页最后一行“fiddlerRoot...”
5、找到所下载的证书进行安装
6、直接设置WLAN或重新连接WLAN进行高级设置
7、服务器主机名填写电脑IP
8、服务器端口填写fiddler端口号
9、点击保存或连接
10、验证打开手机软件查看fiddler能否抓取到HTTPS的包
四、弱网测试
移动端有多种网络:无线网络、3G、4G、5G等,每种网络都有不同的网络传输制式,做软件测试我们不仅要测试app在各种环境下的网络兼职性还要根据用户的使用习惯来进行模拟测试。
断网、网速较差及网络之间的切换时页面的显示等,这些对于移动端来说很重要。此外,在非wifi下,还需要注意网络的使用量问题。所以app测试的在弱网测试上还是比较重要的,关系到用户体验。
弱网测试定义根据公司的不同定的标准也不一样,有的公司2G以下网速是弱网,有的公司是3G以下。
做弱网测试一般是模拟WIFI信号弱的场景,这样就可以用fiddler实现,下面就讲一下如何用fiddler做弱网测试:
1、点击“规则——性能——调制解调器速度”,勾选上“调制解调器速度”后打开app就会发现速度慢了很多,但具体慢了多少呢?是不是需要的网速,该可以进行一下操作查看和修改。
2、点击规则——自定义规则——确定(第一次打开需要确定)打开fiddler配置文件。
3、配置文件内是fiddler编写代码,所以不要乱修改!在配置文件中搜索(ctrl+F):if (m_SimulateModem)。
4、if语句的意思是:若果勾选”调制解调器速度“那么延迟发送每上传一个KB300毫秒,每下载一KB 延迟接受150毫秒。这里需要注意点是一般说网速是每秒多少KB或多少M来相容网速,而if语句是每KB多少毫秒,所以按正常的说法是:延迟上传3.3KB/s,延迟下载6.6KB/s。这里有一个简单粗暴的方法:用1000除以需要的KB/s数所得到的商就是if语句中ms/KB。
5、、修改后保存关闭,然后在勾选上”调制解调其速度“就可以进行网络测试了。
五、弱网测试思路
1、3G/4G/5G/WiFi等网络环境下数据传输是否会出现缺包丢包的现象
2、3G/4G/5G/WiFi等网络环境相互转换是否有缺包丢包现象
3、弱网环境下会不会出现缺包丢包现象
4、弱网环境下会不会出现闪退现象
5、弱网环境下302跳转页面,达到内置超时阀值后,webview自动关闭
6、弱网环境下模拟用户使用习惯,比如多重点击后在网络正常后如何显示,是只显示第一次结果还是累计显示多次结果。或者加载时返回、退出、点击多个按钮等情况的处理结果。