Fiddler抓包以及断点测试、弱网测试

Fiddler是最常用的Web调试工具之一。

对于开发来说,前端可以通过fiddler代理来调试JS、CSS、HTML样式。后端可以通过fiddler查看请求和响应,定位问题。

对于测试来说,可以通过抓包方式修改前端请求参数和模拟后端返回,快速定位缺陷。

总之,不管是开发还是测试,fiddler都是一款工作中不可或缺的辅助利器。今天介绍一下fiddler的使用。
 

// fiddler的基本配置

  • fiddler默认是只抓取HTTP协议,所以抓取HTTPS协议需要打开配置安装证书。

 图片

图片

  • 允许远程连接,勾选Allow remote computers to connect,默认的端口为8888

图片

// fiddler的使用

  • 打断点,修改前端请求参数

  以百度页面为例

 接下来按下图点击会有一个向上的红色箭头

此时重新请求页面进入断点

修改参数后可以看到搜索框内容不变 下面内容变为12306

点击此处 可放开断点

手机端监听
安卓手机

但是如果你想要对手机上的app进行抓包怎么办呢,那么你还需要进行以下操作:

首先你的Fiddler所在的电脑和手机必须处在同一个局域网内(即连着同一个路由器)。

查看你的本机IP地址,在Fiddler的右上角有一个Online按钮,点击一下会显示你的IP信息

配置连接信息:Tools > Options >Connections
- 端口默认是8888,你可以进行修改。
- 勾选Allow remote computers to connect选项,然后重启Fiddler,再次打开时会弹出一个信息,选择ok即可。

配置
打开你的手机,找到你所连接的WIFI,长按选择修改网络,输入密码后往下拖动,然后勾选显示高级选项,然后在代理一栏选择手动,再将你先前查看的IP地址和端口号输入进去,然后保存。

这里写图片描述


最后安装手机证书,在手机浏览器一栏输入电脑的IP地址和端口号
这里我是192.168.1.157:8888
进入一个网页,点击最下面那个FiddlerRoot certificate下载证书,下载成功后在设置里面安装,安装步骤:打开高级设置->安全->从SD卡安装证书->找到证书文件->点击后为证书命名点击确定即可安装成功

测试一下,比如在手机上打开抖音app,找到评论的那一个请求。

抖音
可以看到我们已经成功的找到了评论所对应的那个请求

到这里就已经大功告成了

弱网测试:

1、在fiddler中启用Rules → Performances → Simulate Modem Speeds :模拟调制解调器的速度

 

2、在开启第一步模拟调制解调器的速度功能前,应该去设置我们需要模拟的网速,Rules→ Customize Rules,点击该选项后会出现一个文本编辑框,在这段文本内我们只需要修改其中一段代码就可以

 

网络取值的算法就是 1000/下载速度 = 需要delay的时间(毫秒),比如50kb/s  需要delay20毫秒来接收数据。

查找下面的代码,设置好你想要模拟的网速:

        if (m_SimulateModem) {
            // Delay sends by 300ms per KB uploaded. //每延迟300ms发送1kb的数据,也就是每1s发送10/3kb的数据
            oSession["request-trickle-delay"] = "300"; 
            // Delay receives by 150ms per KB downloaded.//每延迟150ms下行1kb的数据
            oSession["response-trickle-delay"] = "150"; 
        }

代码中:request-trickle-delay代表的是你网络请求的延迟时间,response-trickle-delay代表的是网络响应的延迟时间,单位都是毫秒

上面的方式只是模拟一种稳定的网速,但实际情况中,网速是不稳定的,如果需要模拟这种情况,只需要修改代码如下:

    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,2000);
        // Delay receives by 150ms per KB downloaded.
        oSession["response-trickle-delay"] = ""+randInt(1,2000);
    }

3、设置完成之后,需要重新开启模拟调制解调器来启用新的设置。

这时候用app进行弱网络条件操作,选择第一个请求和最后一个请求,可以看到整个页面加载所消耗的时间。通过fiddler的记录能知道每个请求不同部分的请求时间。overall elapsed是整个session的时间。

 

  • 2
    点赞
  • 47
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值