Fiddler无所不能——之测试开发攻城狮必备神器

fiddler官网 https://www.progress.com/

官网下载fiddler  https://www.telerik.com/download/fiddler/fiddler4

fiddler插件下载 https://www.telerik.com/fiddler/add-ons

 

Fiddler无所不能——之测试开发攻城狮必备神器

1、模拟真实网络环境4g网、3g网络、2g网络、弱网等​

开启弱网Rules——Performance——勾选Simulate Modem Speeds

关闭弱网Rules——Performance——取消勾选Simulate Modem Speeds

 自行设置指定的上行下行网速

 

 

 

 2、并发请求,测试并发请求导致的问题​

右击——Replay——按住shift再点击Reissue Requests,弹出框设置并发次数5次并确定,可以看到同一时间相同请求发送了5次,这就是并发请求,

3、接口测试、接口调试(手动配置接口参数/抓的接口手动拖至composer即可)

 

4、环境映射(安装插件stave)

    <1>环境切换:当我手机装的是测试环境包/线上环境包,想映射到线上环境/测试环境,可以通过此途径

    <2>旧版本兼容:新版本已测试通过,想测老版本兼容,可以下载线上包,通过映射到测试环境,可以达到线上前端兼容新服务测试

 

 

 

5、mock服务(前后端联调、前端测试、页面适配测试)

      项目版本中,当我们前端已做好,后端未好时,我们不能干坐着等后端好了再调试或再测试,这时我们就可以用上这个方法了

     <1>桌面新建json/txt接口响应数据,设置测试数据,与接口定义文档一致

     <2>将要测接口拖至右边AutoResponder窗口中,勾选Enable rules,勾选此接口并选中,选find a file…(图2)然后选响应文件(图1)

     <3>设置完成后,app前端再次请求此接口,查看响应体(图3),并查看页面展示数据,正是图1设置的响应体

 

 

 

 

 6、模拟定

     有时我们想测试下app的其它城市定位;或者其它城市切换至本城市

    <1>抓取美团小程序定位接口,目前定位上海

      https://i.meituan.com/locate/latlng/34.287145,108.948189.json?isMars=false

    <2>百度地图查找要定位城市的坐标点34.287145,108.948189

    <3>fiddler底部栏中bpu  https://i.meituan.com/locate/latlng 回车后

 

     <4>小程序中再次请求定位这个接口,此时拦截住请求,快速修改上海坐标点为西安坐标点,点run to completion,接口响应定位数据为西安

    <5>再次查看小程序里,首页定位到西安了,达到目的了,哈哈哈哈哈

 

7、fiddler查看显示接口请求的ServerIP

     1. 运行fiddler,菜单,Rules->Customize Rules…或者点击右侧tab

       “FiddlerScript”

     2、Ctrl+F查找“static function Main()”字符串,然后添加下面这行代码:

    FiddlerObject.UI.lvSessions.AddBoundColumn("ServerIP", 120, "X-HostIP");

 

 7、模拟失败场景测试(登录失败、查询页面失败等)

我们平时测试重点只会关注正常成功逻辑,而恰恰忽略了异常失败逻辑,并且对于异常测试无从下手,这时我们就要拿出秘密武器了

   <1>抓取要测试的接口,我们可以看到接口是通过的

     <2>右侧切换至AutoResponder页面,拖拽<1>中接口至AutoResponder页面中间区域,勾选顶部3个选框,底部选择要模拟的报错形式,点save保存

 

    <3>这时就设置好了,重新请求此接口或退出app重新进,再次请求此接口,我们回看到左侧抓包区域,此接口报错502,就达到了模拟接口502的效果

 

 

8、拦截http请求,设置断点

使用Fiddler进行HTTP断点调试是fiddler一强大和实用的工具之一。通过设置断点,Fiddler可以做到:

①修改HTTP请求头信息。例如修改请求头的UA,Cookie,Referer信息,通过“伪造”相应信息达到相应的目的(调试,模拟用户真实请求等)。

②构造请求数据,突破表单的限制,随意提交数据。避免页面js和表单限制影响相关调试。

③拦截响应数据,修改响应实体。

 

设置断点共有两种方式:

①fiddler菜单栏->rules->automatic Breakpoints->选择断点方式,这种方式下设定的断点会对之后的所有HTTP请求有效。有两个断点位置:

1)before response。也就是发送请求之后,但是Fiddler代理中转之前,这时可以修改请求的数据。

2)after response。也就是服务器相应之后,但是在Fiddler将响应中转给客户端之前。这时可以修改响应的结果。

3)如何消除命令呢?点击Rules->Automatic Breakpoint->Disabled

②命令行设置断点

1)bpu在请求开始时中断

命令行输入:bpu www.baidu.cm(拦截www.baidu.com请求)

解除拦截:输入命令:bpu

2)bpafter在响应到达时中断

命令行输入:bpafter www.baidu.cm(拦截www.baidu.cm返回值)

解除拦截:输入命令:bpafter

3)bps中断HTTP响应状态为指定字符的全部session响应

命令行输入:bps 302

解除拦截:输入命令:bps

4)bpv/bpm中断指定请求方式的全部session响应

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/568080.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

TensorFlow7-多元线性回归模型

运行结果&#xff1a;错误 # 不确定多少行为None。列为12列。即12个数据特征 xtf.placeholder(tf.float32,[None,12],name"X") # 12个特征数据ytf.placeholder(tf.float32,[None,1],name"Y") # 1个标签数据### 创建变量 定义模型结构# 定义了一个命令空…

史上最全jmeter逻辑控制器案例详解

在jmeter中逻辑控制器可以控制采样器(samplers)的执行顺序。由此可知&#xff0c;控制器需要和采样器一起使用&#xff0c;否则控制器就没有什么意义了。放在控制器下面的所有的采样器都会当做一个整体&#xff0c;执行时也会一起被执行。 &#xff08;1&#xff09;控制测试计…

python3.8.2中文手册chm_3.2.2中文语法考察

3自然语言3.1动物的语言3.2自然语言3.2.1英文语法考察3.2.2中文语法考察常见理论可对中文进行的描写与解读如下。汉字的起始是笔划&#xff0c;包括有&#xff1a;横、竖、撇、点、捺、提六种基本笔划&#xff1a;一、丨、丿、丶、㇏、㇀。这些基本笔划可以进一步组合出25种复合…

TensorFlow8-mnist手写数字识别入门

分类问题的损失函数为什么一般不用MSE&#xff1f;MSE在逻辑回归中可能具有多个局部最优点 不能用梯度下降算法

jmeter服务器性能资源监控部署

1、下载https://jmeter-plugins.org/install/Install安装插件plugins-manager放置lib/ext下&#xff0c;重启jmeter选项页面可查看到此下载插件 2、准备客户端插件jmeter-plugins-perfmon-2.1.jar和服务端监控插件ServerAgent-2.2.3&#xff08;CMDRunner.jar、ServerAgent.jar…

C++中log的底数理解

C 中log是以e为底的 log10 是以10为底的 现在来看看为什么底数具体为多少不重要&#xff1f; 读者只需要掌握&#xff08;依稀记得&#xff09;中学数学知识就够了。 假设有底数为2和3的两个对数函数&#xff0c;如上图。当X取N&#xff08;数据规模&#xff09;时&#xff0…

java如何禁用usb_IT技巧分享59: 如何禁用USB端口以及光驱来保证数据不被泄露

现在电脑USB接口是最基本的一个配置&#xff0c;能快速的把电脑文件拷贝到u盘或者移动硬盘&#xff0c;大大的提高了我们的工作效率&#xff0c;但也容易感染病毒&#xff0c;把公司商业机密泄露出去&#xff0c;为了加强公司安全措施&#xff0c;现提供禁用USB办法。操作步骤&…

mysql原理--连接查询的成本

1.准备工作 连接查询至少是要有两个表的&#xff0c;只有一个 single_table 表是不够的&#xff0c;所以为了故事的顺利发展&#xff0c;我们直接构造一个和 single_table 表一模一样的 single_table2 表。为了简便起见&#xff0c;我们把 single_table 表称为 s1 表&#xff0…

jmeter模拟压测真实复杂用户场景,阶梯螺纹线程组Stepping Thread Group终极线程Ultimate Thread Group并发线程Concurrency Thread Group

我们有时需要模拟非常真实复杂的用户压测场景&#xff0c;可以用到此插件来设计场景 1、安装插件&#xff0c;选项——Plugins Manager打开安装页面 2、搜索standard set并安装&#xff0c;重启jmeter&#xff0c;查看测试计划——添加线程组——jpgc - Stepping Thread Group…

防止文件重复定义之方法

防止重复定义用#ifndef #define #endif 若文件为类中成员函数可以直接使用 若文件为函数&#xff0c;若函数的声明和定义放在一起&#xff0c;则只能采用static或者inline方法解决。用#ifndef不管用 若文件为函数时&#xff0c;函数的声明和定义分别放在.h和.cpp中&#xff…

部署java项目_企业最看重什么样的Java人才?

很多人学习Java真的不是为了梦想&#xff0c;不是爱好&#xff0c;仅仅是想成为拿到高薪的那个人&#xff0c;成为同学里赚的最多的人&#xff0c;成为别人嘴里谈着的那个人。要成为拿高薪的Java工程师&#xff0c;我们要先看看企业到底需要哪方面的人才。上图是某招聘网站上Ja…

jmeter如何通过后置处理器提取(正则提取器、json提取器)做接口关联?

一、后置处理器—正则表达式提取器 1、添加正则表达式提取 2、正则表达式提取面板介绍&#xff1a; 引用名称&#xff1a;提取引用名称&#xff0c;下个请求要引用此参数名称&#xff0c;如填写token&#xff0c;下个请求中用${token} 正则表达式&#xff1a;()&#xff1a;括…

数据结构树4-二叉搜索树2

二叉搜索树.h: #ifndef _二叉查找树_H #define _二叉查找树_H #include<iostream> #include<string>enum Boolean{ FALSE,TRUE}; template<class Type> class Element { public:Type key;//方便添加更新数据 }; // 错误我的写法&#xff1a;template<c…

【功能业务篇】APP授权微信登录、绑定账号测试思考

参考https://open.weixin.qq.com/cgi-bin/showdocument?actiondir_list&tresource/res_list&verify1&idopen1419317851&token&langzh_CN 准备工作 移动应用微信登录是基于OAuth2.0协议标准 构建的微信OAuth2.0授权登录系统。 在进行微信OAuth2.0授权登…

数据结构-树3-红黑树

1、刚开始建立的红黑树的红黑树只有一个指针&#xff08;实际为结点&#xff0c;它的右子树指向真正的根结点&#xff08;现在指向空结点&#xff09;。左子树为空结点&#xff0c;里面的数据为负无穷大&#xff09; 2、实现Insert函数

比亚迪后续车都会搭在鸿蒙系统吗_华为鸿蒙系统上车,比亚迪汉发布!我告诉你华为鸿蒙到底是什么...

最早见到华为的HiCar&#xff0c;还是今年4月份的华为P40系列手机发布会。根据发布会公布的信息&#xff0c;HiCar主要的特点就是手机与汽车的顺畅连接体验。借由5G手机&#xff0c;汽车可以实现更强的数据传输能力&#xff0c;同时百万级别的手机APP也会扩展至汽车之上。在这次…

Python模拟实现multipart/form-data格式上传图片文件

一、单字段发送单个文件 url "http://httpbin.org/post" data None files { ... } r requests.post(url, data, filesfiles) 而这个files参数是可以接受很多种形式的数据&#xff0c;最基本的2种形式为字典类型和元祖列表类型 1、字典类型的files参数 { &q…

tensorflow9-mnist手写数字识别进阶-多层神经网络建模

大圆为一个神经元模型 全连接&#xff1a;相邻的两层之间所有的结点都会连接 神经网络的层数&#xff1a;一般指的谁隐藏层的数量 上图中的网络即为一层神经网络 以上即为两层的全连接神经网络 两层神经网络模型训练 神经网络的层次是不是越多越好&#xff1f;并不是越多越好…

BurpSuit配置抓包http和https请求

1、下载安装burpsuit https://portswigger.net/burp/communitydownload 双击一直点下一步&#xff0c;可安装成功 2、burpsuit设置 2、浏览器设置代理 设置-高级-打开代理设置-局域网设置 3、这样可以抓取http包了 4、Burp Suite要抓HTTPS的包&#xff0c;是需要有Burp Sui…