备注:本文为博主的同事总结的文章,未经博主允许不得转载。

Fiddler下载和配置安装

  1. 从网上下载fiddler的安装包即可,直接默认,一直点击下一步,直至安装完成。
  2. 安装完成后直接打开Fiddler

在菜单栏Tools->Fiddler Options->Connections,勾选Allow remote computers to connect,默认的端口号为8888,这里不需要修改,在修改手机代理设置时注意与这里一致。

  1. 查看pc本机ip后,手机设置代理,填入pc本机的ip和端口号8888,之后手机上的请求我们都可以抓包了。
  2. 因为我们一般在测试时,都是看的同一域名下的,所以我们可以使用,Filters里面的各种筛选规则,来筛选我们想要的请求,以免被其他的不相干请求影响。
  3. 在右上方结果框中选 择Inspectors->Raw即可看到请求的URL、Cookie和Host等有关信息。在右下方结果框中选择JSON就能看到请求返回的 JSON字符串。这里的JSON字符串是我们判断请求是否成功的重要依据。

Fiddler抓包实例

Jmeter的下载配置和安装

  1. 因为Jmeter是依赖jdk的,故需要先安装jdk,

jdk的安装方法和环境变量的配置,可以参照如下链接:

http://jingyan.baidu.com/article/bea41d435bc695b4c41be648.html

  1. Jmeter官网下载,注意根据自己本机的位数下载

http://jmeter.apache.org/

  1. Jmeter不用安装,下载后,直接解压即可
  2. 打开jmeter,添加一个线程组

使用Jmeter进行接口测试

  1. 修改名称。线程组名称并不重要,根据自己的需要修改就行,主要是方便自己看。由于我们执行脚本一般在需要的时候执行一次就可以,并不需要其他的配置,所以下方的线程属性就保持默认值即可(在进行压力测试的时候就需要进行配置了)。
  2. 添加HTTP请求。右键线程组选择HTTP请求。
  3. 因为请求需要的请求头,请求体,请求url

先建一个请求头,直接从fiddler里面拿就可以了,填写到HTTP信息头管理器里面去。

  1. 现在需要构建请求体

新建一个http请求

  1. 接下来我们看看构建一个请求究竟需要填写什么,对应我们fiddler抓取的请求

请求参数的填写方式可以分为以下两种方式,两种方式各有利弊。

  1. Parameters:录入比较麻烦,但是容易查看和修改
  2. Body Data:录入方便,后期查看修改不直观

  1. 执行请求,拿到响应

  1. 现在拿到响应了,你会发现我们的中文都是unicode的编码,这个我想过多种方法,得出的结论是服务器返回unicode,但未经过浏览器解析,所以这样显示。

不过这样更加方便我们写正则来验证,哈哈。

  1. 之后我们就是对响应做验证了,添加一个响应断言,这里面需要会写正则表达式

  1. 响应断言如何写

一般选择如下的设置即可,因为响应文本较长,一般我们都选择包括,检查我们想要检查的字段呢即可

一些不确定的字段就需要我们写正则来验证返回的字段的基本规则是否正确。

  1. 验证我们也验证了,现在我们多个接口要一起查看结果和通过率,那你需要添加一个监听器,一个线程组执行一次,多少接口通过,多少失败就可以直接在聚合报告里面看出来了。

  1. 这个是编写断言的中的一个调试方法

在结果树里面可以直接输入我们写的正则来先验证我们写的表达式是不是对的,拿到的结果是不是我们想要的。

博主:海宁

联系:whnsspu@163.com

从Fiddler抓包到Jmeter接口测试(简单的思路)的更多相关文章

  1. 模拟客户端向服务器发起请求(从Fiddler抓包到Jmeter接口测试)

    一.安装Fiddler 二.配置 在菜单栏Tools->Fiddler Options->Connections,勾选Allow remote computers to connect,默 ...

  2. jmeter+Fiddler:通过Fiddler抓包生成jmeter脚本

    Fiddler是目前最常用的抓包工具之一,它作为客户端和服务器端之间的代理,记录客户端和服务器之间的所有请求(http/https),可以针对特定的请求过滤,分析请求和响应的数据.设置断点.调试.修改 ...

  3. Fiddler抓包—搞定接口测试

    ·包的定义   在包交换网络里,单个消息被划分为多个数据块,这些数据块称为包,它包含发送者和接受者的地址信息.这些包然后沿着不同的路径在一个或多个网络中传输,并且在目的地重新组合.   ·应用   简 ...

  4. 转载 HTTPS 之fiddler抓包、jmeter请求

    转载自 http://suixiang0923.github.io/2016/01/12/%E6%B5%85%E8%B0%88HTTPS%E4%BB%A5%E5%8F%8AFiddler%E6%8A% ...

  5. fiddler抓包后Jmeter实现登录接口

    登录接口测试时,先要抓取登录接口,我们使用fiddler来抓包,如下图: 然后再使用Jmeter,填写相对于的参数. 查看结果树: 关键在与抓包,搞清楚抓包的信息,可以用fiddler和火狐和谷歌.我 ...

  6. Python+Requests接口测试教程(1):Fiddler抓包工具

    本书涵盖内容:fiddler.http协议.json.requests+unittest+报告.bs4.数据相关(mysql/oracle/logging)等内容.刚买须知:本书是针对零基础入门接口测 ...

  7. fiddler抓包-简单易操作(二)

    Fiddler抓包简介 原理:fiddler是通过改写HTTP代理,客户端和服务器进行交互时,数据会从他那里通过,来监控和截取数据.我是这样理解的,如果不对,欢迎指正.如下图: 如果想要抓到数据包,首 ...

  8. 通过fiddler抓包,用jmeter实现multipart/form-data类型请求

    Fiddler抓包结果如下: 1.multipart/form-data的基础方式是post,也就是说通过post组合方式来实现的.2.multipart/form-data于post方法的不同之处在 ...

  9. Fiddler抓包的简单使用

    Fiddler抓包的简单使用 参考的博客文章:玲虫师的<Fiddler抓包[5]_Fiddler过滤>. (1)使用fiddler进行过滤,只抓取需要的网络请求. 点击右侧菜单中的[Fil ...

随机推荐

  1. Java 8五大主要功能为开发者提供了哪些便利?

    两年前当Java 8发布后,立即受到了业界的欢迎,因为它大大提高了Java的性能.它独特的卖点是,顾及了编程语言的每一个方面,包括JVM(Java虚拟机)和编译器,并且改良了其它帮助系统. Java是 ...

  2. gradle学习笔记(1)

    1. 安装     (1) 下载最新gradle压缩包,解压到某处.地址是:Gradle web site:     (2) 添加环境变量:             1) 变量名:GRADLE_HOM ...

  3. Android性能优化之巧用软引用与弱引用优化内存使用

    前言: 从事Android开发的同学都知道移动设备的内存使用是非常敏感的话题,今天我们来看下如何使用软引用与弱引用来优化内存使用.下面来理解几个概念. 1.StrongReference(强引用) 强 ...

  4. [C#] 简单的 Helper 封装 -- SecurityHelper 安全助手:封装加密算法(MD5、SHA、HMAC、DES、RSA)

    using System; using System.IO; using System.Security.Cryptography; using System.Text; namespace Wen. ...

  5. Oracle碎碎念~2

    1. 如何查看表的列名及类型 SQL> select column_name,data_type,data_length from all_tab_columns where owner='SC ...

  6. 深入解析Sqlite的完美替代者,android数据库新王者——Realm

    写在前面: 又到一年一度七夕虐狗节,看着大家忍受着各种朋友圈和QQ空间还有现实生活中的轮番轰炸,我实在不忍心再在这里给大家补刀,所以我觉得今天不虐狗,继续给大家分享有用的. 如果你比较关心androi ...

  7. UVA-146 ID Codes

    It is 2084 and the year of Big Brother has finally arrived, albeit a century late. In order to exerc ...

  8. 【Java每日一题】20170103

    20161230问题解析请点击今日问题下方的"[Java每日一题]20170103"查看(问题解析在公众号首发,公众号ID:weknow619) package Jan2017; ...

  9. ES6之let命令详解

    let与块级作用域 { var foo='foo'; let bar='bar'; } console.log(foo,'var'); //foo varconsole.log(bar ,'bar') ...

  10. 编写一个通用的Makefile文件

    1.1在这之前,我们需要了解程序的编译过程 a.预处理:检查语法错误,展开宏,包含头文件等 b.编译:*.c-->*.S c.汇编:*.S-->*.o d.链接:.o +库文件=*.exe ...