使用 Fiddler2 进行接口测试的方法
一 前言
部分业务需要进行接口测试,而接口测试的覆盖度稍有不全,可能就会造成包括启动崩溃在内的严重问题。目前本人所在的团队中业务大量使用了本地代码中直接 mock 数据进行测试,此种方法虽然可以测试到部分展现异常,
但是对数据解析部分的测试是无能为力的,因此有没有办法直接模拟整套接口流程,充分测试接口的健壮性呢?
带着这个疑问,在 google 一通后,发现 fiddler2 可以方便的对接口进行拦截,随心所欲构造测试数据,从而对接口进行完整充分的测试。
二 Fiddler2 测试接口使用方法
2.1 Fiddler2 AutoResponder
开启 Fiddler2 中 AutoResponder 功能可以方便对接口进行拦截。具体原理简要描述见如下流程图:

完整测试截图如下(以信息流短内容接口测试为例):
1. 设置规则,对接口进行拦截。开启 Enable rules,添加规则,在下部分的 Rule Editor 中填入需要拦截的接口地址,然后可以任意指定返回结果,可以是各种状态码或者是自定义 json 文件。
以上述例子为例,http://test.cn/api/v1/channel 为接口地址,这里设置了规则对其进行拦截,然后指定了自定义的 json 文件(位于桌面 4_.txt),改 json 数据可以随意更改供测试接口的健壮性。

2. 手机设置连接 fiddler2 代理,然后访问接口。
3. Fiddler2 检测到对接口的访问,就以设置好的规则返回我们定义好的各种数据。
总结
通过 fidder2 代理的方法,我们可以直接对整个接口进行拦截,整个测试流程和生产环境保持一致,既可以测试到数据解析部分,又可以方便测试到展现部分,成本非常小。
在信息流进行接口测试的过程中,感觉非常方便,因此在这里向大家进行推广!
使用 Fiddler2 进行接口测试的方法的更多相关文章
- python3 接口测试 一般方法
第一步: 导入相关包 import http.client 第二步: 将ip和端口号,使用如下命令,赋值给变量. conn = http.client.HTTPConnection("124 ...
- python2 接口测试一般方法.
接口测试方法: 1. import requests 2. 创建一个url变量,并经访问的地址赋值给它.(包括端口后面的 接口的部分) 例如: url = "http://124.193.9 ...
- postman如何绕过登录账户和密码验证,进行接口测试的方法
实测于:2019.01.08 参考原文:https://yq.aliyun.com/ziliao/403942 一.获取登录后的cookie数据 1.打开浏览器: 2.启用开发者模式(F12键): 3 ...
- RobotFrameWork http/https oauth接口测试 (二)
在RobotFrameWork http/https oauth接口测试 (一)中,大致介绍了相关的概念,终于可以步入正题了~~~ 先介绍下项目背景: 公司的项目采用的授权模式是第三种resource ...
- python之unittest框架实现接口测试实例
python之unittest框架实现接口测试实例 接口测试的方法有很多种,具体到工具有postman,jmeter,fiddler等,但是工具的局限性是测试数据的组织较差,接口的返回工具的判断有限, ...
- 苹果强制使用HTTPS传输了怎么办?——关于HTTPS,APP开发者必须知道的事
WeTest 导读 2017年1月1日起,苹果公司将强制使用HTTPS协议传输.本文通过对HTTPS基础原理和通信过程内容的讲解,介绍APP开发者在这个背景下的应对办法. 几周前,我们在<htt ...
- 使用Jmeter进行http接口性能测试
在进行网页或应用程序后台接口开发时,一般要及时测试开发的接口能否正确接收和返回数据,对于单次测试,Postman插件是个不错的Http请求模拟工具. 但是Postman只能模拟单客户端的单次请求,而对 ...
- API 自动化框架
API 自动化框架 个人认为接口自动化测试使用python语言编写更加简单,但所有接口自动化项目代码的思维都是一样的 1.项目包结构 1.case:存放用例数据的包,将所有用例数据以配置文件形式传入 ...
- Linux下常用系统分析工具总结(转)
1.1 top top命令可以实时动态地查看系统的整体运行情况,是一个综合了多方信息监测系统性能和运行信息的实用工具. Top常用的可选参数和其对应的含义如下: (1)-c:显示完整的命令: (2)- ...
随机推荐
- 用idea写servlet文件
1:File->Project Structure 加号处添加tomcat api(在lib目录下) 2:写servlet文件 src->new servlet写好类名和包名 3:配置we ...
- JS中 obj.style.left 与 obj.offsetLeft 的区别
1.obj.style.left 取得是字符串:28px; 而 obj.offsetLeft取得的值为数字 28: 2.obj.style.left 需要事先将left值写在HTML中,不能致谢在CS ...
- 【LeetCode OJ】Convert Sorted List to Binary Search Tree
Problem Link: http://oj.leetcode.com/problems/convert-sorted-list-to-binary-search-tree/ We design a ...
- codeforces 682C Alyona and the Tree(DFS)
题目链接:http://codeforces.com/problemset/problem/682/C 题意:如果点v在点u的子树上且dist(u,v)>a[v]则u和其整个子树都将被删去,求被 ...
- day12_API第二天
1.Scanner注意问题 1.Scanner中方法 next() -- 查找并返回来自此扫描器的下一个完整标记. nextLine() -- ...
- bootstrap-11
下拉菜单(基本用法) 在使用Bootstrap框架的下拉菜单时,必须调用Bootstrap框架提供的bootstrap.js文件.当然,如果你使用的是未编译版本,在js文件夹下你能找到一个名为“dro ...
- AndroidStudio 中的坑Error:(1, 0) Plugin is too old, please update to a more recent version, or set ANDROID_DAILY_OVERRID
将 build.gradle 中 的 classpath改为2.0.+ dependencies { classpath 'com.android.tools.build:gradle:2.0.+'然 ...
- Win7重装后,如何删除cygwin目录?
参考: http://blog.csdn.net/zjjyliuweijie/article/details/6577037 http://blog.csdn.net/huangzhtao/artic ...
- 《统计推断(Statistical Inference)》读书笔记——第1章 概率论
第一章介绍了基本的概率论知识,以下是这一章的思维导图
- msp430FR5739 FRAM的学习
FRAM,中文名称为铁电存储器..FRAM提供一种与RAM一致的性能,但又有与ROM 一样的非易失性. FRAM 克服以上二种记忆体的缺陷并合并它们的优点,它是全新创造的产品,一个非易失性随机存取储存 ...