zoukankan      html  css  js  c++  java
  • Fiddler基础教程

    一、Fiddler的基本介绍

      Fiddler的官方网站:  www.fiddler2.com

      Fiddler官方网站提供了大量的帮助文档和视频教程, 这是学习Fiddler的最好资料。

      Fiddler是最强大最好用的Web调试工具之一,它能记录所有客户端和服务器的httphttps请求,允许你监视,设置断点,甚至修改输入输出数据,Fiddler包含了一个强大的基于事件脚本的子系统,并且能使用.net语言进行扩展

      你对HTTP 协议越了解, 你就能越掌握Fiddler的使用方法。你越使用Fiddler,就越能帮助你了解HTTP协议。

      Fiddler无论对开发人员或者测试人员来说,都是非常有用的工具。

    二、Fiddler的工作原理

      Fiddler 是以代理web服务器的形式工作的,它使用代理地址:127.0.0.1,端口:8888。当Fiddler退出的时候它会自动注销,这样就不会影响别的程序。不过如果Fiddler非正常退出,这时候因为Fiddler没有自动注销,会造成网页无法访问。解决的办法是重新启动下Fiddler

     

    三、同类的其它工具

      同类的工具有: httpwatch, firebug, wireshark

    四、Fiddler 如何捕获Firefox的会话

      能支持HTTP代理的任意程序的数据包都能被Fiddler嗅探到,Fiddler的运行机制其实就是本机上监听8888端口的HTTP代理。 Fiddler2启动的时候默认IE的代理设为了127.0.0.1:8888,而其他浏览器是需要手动设置的,所以将Firefox的代理改为127.0.0.1:8888就可以监听数据了。

      Firefox 上通过如下步骤设置代理

    点击: Tools -> Options,  在Options 对话框上点击Advanced tab - > network tab -> setting.

    五、Fiddler如何捕获HTTPS会话

      默认下,Fiddler不会捕获HTTPS会话,需要你设置下, 打开Fiddler  Tool->Fiddler Options->HTTPS tab

      点击: Tools -> Options,  在Options 对话框上点击Advanced tab - > network tab -> setting.

    选中checkbox, 弹出如下的对话框,点击"YES"

    点击"Yes" 后,就设置好了。

    六、Fiddler的基本界面

      看看Fiddler的基本界面

     

    七、Fiddler的HTTP统计视图

      通过陈列出所有的HTTP通信量,Fiddler可以很容易的向您展示哪些文件生成了您当前请求的页面。使用Statistics页签,用户可以通过选择多个会话来得来这几个会话的总的信息统计,比如多个请求和传输的字节数。

      选择第一个请求和最后一个请求,可获得整个页面加载所消耗的总体时间。从条形图表中还可以分别出哪些请求耗时最多,从而对页面的访问进行访问速度优化

     

    八、QuickExec命令行的使用

      Fiddler的左下角有一个命令行工具叫做QuickExec,允许你直接输入命令。

      常见得命令有:

      help  打开官方的使用页面介绍,所有的命令都会列出来

      cls    清屏  (Ctrl+x 也可以清屏)

      select  选择会话的命令

      ?.png  用来选择png后缀的图片

      bpu  截获request

     

    九、简单模拟性能测试

    通过 Fiddler 可以简单的模拟性能测试的并发测试,此方法非常的简单,直接讲述如何使用,敬请参阅!

      首先我们要获取需要并发的 HTTP请求,此操作非常简单,则在此不再赘述。获取到响应的 HTTP请求后,在 Fiddler 界面按下快捷键【Shift + R】(在大写状态下),会弹出设置模拟并发次数的页面,如下所示:

    输入模拟并发次数,例如 15,点击 OK 按钮,执行发送请求,结果如下图所示:

    简单模拟性能测试 顺利完结。

  • 相关阅读:
    java集合 stream 相关用法(1)
    ICE新手入门版
    spring中关于FeignClient的错误 QueryParam.value() was empty on parameter 1
    Java Base64解析
    Java RSA加密以及验签
    项目拆分子工程(简单版)
    mysql "ON DUPLICATE KEY UPDATE" 的使用
    关于多定时任务开发
    AtomicInteger保证线程安全的全局变量
    C++矩阵库 Eigen 快速入门
  • 原文地址:https://www.cnblogs.com/ydnice/p/5960938.html
Copyright © 2011-2022 走看看