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的效果

~~~~如果你学到了,欢迎转发~~~~~~

Fiddler无所不能——之测试开发攻城狮必备利器的更多相关文章

  1. Android优秀资源整理合集(论菜鸟到高级攻城狮)

    转载请注明转自:http://blog.csdn.net/u011176685/article/details/51434702 csdn文章:Android优秀资源整理合集(论菜鸟到高级攻城狮) 时 ...

  2. JBPM4之decision节点:3、程序猿|菜鸟|攻城狮|牛人

    JBPM入门系列文章: JBPM4入门——1.jbpm简要介绍 JBPM4入门——2.在eclipse中安装绘制jbpm流程图的插件 JBPM4入门——3.JBPM4开发环境的搭建 JBPM4入门—— ...

  3. 遗留系统:IT攻城狮永远的痛

    我常常觉得我们非常幸运,我们现在所处的时代是一个令人振奋的时代,我们进入了软件工业时代.在这个时代里,我们进行软件开发已经不再是一个一个的小作坊,我们在进行着集团化的大规模开发.我们开发的软件不再是为 ...

  4. 【Copy攻城狮日志】docker搭建jenkins拉取svn代码打包vue项目部署到nginx

    ↑开局一张图,故事全靠编↑ 前言 打开搜索引擎输入『Copy攻城狮』,发现最新的一条记录已经是去年的4月,意味着我又有一年时间没有再总结成长了.习惯了“温水煮青蛙”的日子,无论是经验水平还是薪资收入, ...

  5. iOS程序猿如何快速掌握 PHP,化身"全栈攻城狮"?

    这是一篇以 iOS 开发人员的视角写给广大iOS 程序猿的 PHP 入门指南.在这篇文章里我努力去发掘 objectiv-c 与 php 之间的共性,来帮助有一定 iOS 开发经验的攻城狮来快速上手一 ...

  6. 攻城狮送女友的CSS3生日蛋糕

    在线预览:http://keleyi.com/keleyi/phtml/html5/29.htm 代码如下: <!DOCTYPE html> <html> <head&g ...

  7. iOS攻城狮修炼之路

    自己总结的学习iOS的笔记,打造一个全面的知识体系,iOS攻城狮修炼之路[持续更新中] iOS学习笔记01-APP相关 iOS学习笔记02-UIScrollView iOS学习笔记03-UITable ...

  8. 【Copy攻城狮日志】Node快速重命名文件,告别Potplay字幕困扰问题

    ↑开局一张图,故事全靠编↑ 前言 Copy攻城狮日志的惯例,开局一张图,开始为您讲述一个鲜为人知的故事.故事的开头要从本大狮从盗版网站下载udemy课程的犯罪伊始说起,去年的某月某天,我真正接触到了“ ...

  9. 软件攻城狮究级装B指南

    引言 装B于无形,随性而动,顺道而行,待霸业功成之时,你会发现:装B是牛B最好的的试金石. -- SuperDo 第一章.人间兵器(准备工具) <论语·魏灵公>:“工欲善其事,必先利其器. ...

随机推荐

  1. 集合、深浅copy

    集合set: 集合也和列表数组一样有增加,但是集合是真正的没有顺序的  所以集合无法查找的,并且集合的外观你看着好像是字典和列表的组合,因为它是用字典的括号一样 ,但是又是里面并没有键值对  只是一个 ...

  2. 一、python小功能记录——监听键盘事件

    1.监听键盘按键 from pynput.keyboard import Listener def press(key): print(key.char) with Listener(on_press ...

  3. SVN global ignore pattern

    *.o *.lo *.la *.al .libs *.so *.so.[0-9]* *.a *.pyc *.pyo *.rej *~ #*# .#* .*.swp .DS_Store */bin */ ...

  4. Java实例---简单的数据库操作

    源码分析 DAOFactory.java package cn.ftl.mysql ; public class DAOFactory { public static IEmpDAO getIEmpD ...

  5. [日常] NOIWC2019 冬眠记

    NOIWC 2019 冬眠记 辣鸡rvalue天天写意识流流水账 Day 0 早上没有跑操(极度舒服.png) 和春哥在博客颓图的时候突然被来送笔电的老爹查水表(捂脸) 母上大人骗我说这功能机不能放存 ...

  6. 一、并行编程 - 数据并行 System.Threading.Tasks.Parallel 类

    一.并行概念 1.并行编程 在.NET 4中的并行编程是依赖Task Parallel Library(后面简称为TPL) 实现的.在TPL中,最基本的执行单元是task(中文可以理解为"任 ...

  7. 缓存MEMCACHE php调用

    在项目中,涉及大访问量时,合理的使用缓存能减轻数据库的压力,同时提升用户体验.即在非实时性的需求的前提下,一小段时间内(若干秒),用于显示的数据从缓存中获取的,而不用直接读取数据库,能有效的减少数据库 ...

  8. 【RabbitMQ】1、安装

    1.  下载 下载地址:http://www.rabbitmq.com/download.html 2.  windows下安装 2.1. 安装Erlang 下载:http://www.erlang. ...

  9. iOSUI的绘图事务--Core Animation Pipeline--BackBoard(render server)

    Core Animation Pipeline 流水线 在 iOS上,动画和视图的渲染其实是在另外一个进程做的(下面我们叫这个进程 render server),在 iOS 5 以前这个进程叫 Spr ...

  10. 2、Android-UI(布局待完成)

    2.3.布局 实现界面的整齐摆放各种控件需要使用布局来完成 布局是一种可用于放置很多控件的容器 可以按照一定的规律调整内部的控件位置 布局的内部不仅可以放置控件还可以放置布局 1.线性布局 Linea ...