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响应
Fiddler无所不能——之测试开发攻城狮必备神器相关推荐
- 从码农到开发攻城狮,我经历了什么?
对于很多想从事或者刚进入开发岗位的伙伴们来说,对于开发这个职位的了解并不多,甚至已经有些迷茫,感觉总有敲不完的代码和无尽的加班赶项目,一眼望不到头.今天就借用朋友的故事讲述一个普普通通的开发蜕变之路, ...
- 15个前端攻城狮必备的学习网站 | 你知道几个?(附视频介绍)
前端开发所需掌握知识点概要 HTML&CSS: 对Web标准的理解(结构.表现.行为).浏览器内核.渲染原理.依赖管理.兼容性.CSS语法.层次关系,常用属性.布局.选择器.权重.盒模型.Ha ...
- 一位Java开发攻城狮的自我修养之项目篇
攻城狮的自我修养之项目篇 基础知识 Java基础 SpingBoot SpringCloud LeetCode题库 大数据 项目实战 商城系统 权限管理系统 脚手架系统 人事管理系统 论坛系统 博客系 ...
- 前端开发攻城狮必须知道的开发环境和插件
前端开发,做到后面,是可以走很多方向的: 但是要保证后期的平滑过度,前期还是要把一些必须的知识搞扎实的: 下面是我根据自己学习的感悟,写的一些东西: 一个网站的流程,由前端工程师 使用 HTML+CS ...
- 测试攻城狮必备技能点!一文带你解读DevOps下的测试技术
[摘要]本文将从DevOps模式下对测试人员的活动的变化,以及常用的测试技术层面进行解读. 项目的软件开发模式主要经历瀑布模型.敏捷开发和DevOps这几个阶段,其中DevOps主要解决开发和运维.运 ...
- IT 攻城狮必备的十大算法思想
概率 排列组合 动态规划 递归与迭代 位操作 排序(几大主流的排序) 图 树与堆 链表 数组 Conferences: http://www.csdn.net/article/2014-04-10/2 ...
- 论一个优秀的测试攻城狮的基本素质
作为一个测试攻城狮,我们要做到,要么不做,要么做到最好 言归正传,首先呢,既然选择了测试那么就要对测试负责到底,不要半途而废. 对软件测试要感兴趣,对自己呢,也要有自信.有信心. 如果具备了这些,那么 ...
- 关于那些最好玩的户外APP合集下(适合资深驴友、牛逼设计狮、装逼攻城狮)...
本文会陆续分享分析全国最好的30个户外APP(下载量均至少在30万级别以上),希望能给户外爱好者.Ui设计狮.户外APP开发攻城狮一些启示. 关于那些最好玩的户外APP合集上(适合资深驴友.牛逼设计狮 ...
- 运维人生攻城狮的第一次搬家
工作以来搬家都搬了好多趟了,今天再次搬家,下面开始回忆并记录下来,用于缅怀我们攻城狮的青春人生. 刚开始上班第一间公司,福利还不错,先住在公司宿舍,一间宿舍几间房,和几个前辈程序员住一起,公司给我们安 ...
最新文章
- is not a supported wheel on this platform pip安装报错
- html5 点击事件委托,jquery事件委托
- Linux 基金会透露未来 Linux 内核可能会引入形式验证
- 【Linux】一步一步学Linux——systemctl命令(147)
- java面试-Java并发编程(六)——线程间的通信
- [轉]VS2010 UML类图生成代码
- docker search
- 1)Linux学习笔记:crontab命令
- webpack的分享
- 常见的目标检测中的背景建模方法漫谈
- markdown模板(个人使用)
- 机器人动力学-牛顿-欧拉方程
- chorme的性能优化工具
- idea卸载不干净怎么办_Office卸载不干净怎么办?我想你一定需要Mac卸载Office的图文教程!...
- Ubuntu下利用docker安装微信
- OpenGL ES EGL eglCreatePbufferSurface
- qt在表格中如何画线_Qt之表格控件蚂蚁线
- 国内免费php mysql空间,[php mysql]国内有什么好的免备案免费php+mysql空间
- 轻巧便携电动螺丝刀,DIY的得力好帮手,WOWSTICK PLAY MINI SD体验
- SDN系统方法 | 8. 网络虚拟化
热门文章
- 华为6x手机计算机软件没有了,只用一招,教你将华为手机变成电脑,这波操作没几个人知道...
- java用NIO实现文件传输_Java Nio 实现文件的传输
- mybatis plus当月数据查询_Springboot+mybatis(plus)+druid多数据源
- ant java 返回_使用Ant自动化我们的java项目生成
- 计算机桌面设置定时,如何设置可以每月自动变化的日历桌面?
- 32f407tim4时钟源频率_慎重选择时钟发生器,别让这俩指标影响你的ADC 「图片」...
- ascii码扩展 php,php与ascii码
- python 解决bytes和str之间 出现 TypeError的问题
- 一道简单却易混淆的高等数学求极限题目
- 命令行输入mysql不行_MySQL命令行无法插入中文数据