前言

在测试时,我们经常需处理请求返回的响应数据,比如很多时候 cookie 或 token 或 Authorization授权码 会返回在 Response headers(响应头)中,这时我们便需要从中进行提取,以供其他接口使用。

今天我们主要学习下,如何在Jmeter中通过正则提取响应数据中 Response headers 的数据。

总的设置界面如下:

发送请求,获取响应数据

首先,设置一个HTTP请求,如下:

接着,设置一个察看结果树,然后执行,得到响应数据,下图中的cookie即我们需要提取的数据:

正则提取响应数据

接下来,我们便设置一个正则提取器(用于提取出cookie),另外再设置一个调试后置处理程序(用于查看提取结果)

说明:

1.引用名称:即变量名,后续请求中可以通过 ${引用名称} 来调用

2.正则表达式:按实际情况填写

3.模板:$$表示需要哪个正则表达式获取的值,1代表第一个,-1代表全部,0代表随机

4.匹配数字:1代表第一个,-1代表全部,0代表随机

5.缺省值:如果正则未匹配到,就会使用缺省值

正则说明:

. 表示除“\r\n”之外的任意字符

* 表示匹配前面的子表达式任意次

+ 表示匹配前面的子表达式1次或多次

? 表示匹配前面的子表达式0次或1次

.*:贪婪匹配原则,即匹配到不能匹配为止

.*?:非贪婪匹配,即在匹配成功的情况下尽可能少的匹配

实例:存在字符串 7adbcfgfbesw ,要匹配7和b之间的字符

匹配1:使用 .* ,7开始之后,遇到第一个b不结束,继续找下一个b,直到不能匹配,即匹配到 adbcfgf

匹配2:使用 .*? ,7开始之后,遇到第一个b就结束了,即匹配到 ad

查看提取结果

以上就是本次的提取结果,在这里,如果需在后续请求使用,可通过 ${response_data} 来关联调用。

可能遇到的问题

假如,我们需提取 Set-Cookie 里的所有内容。此时,如果依然使用 .*? ,就会发现提取是不成功的,如下:

要解决这个问题也很简单,我们修改正则表达式,使用 .* 贪婪匹配原则既可以。

好了,以上就是通过Jmeter正则提取的内容,提取其他数据,如 token 、 Authorization 等的方法与上面类似,大家可以进行实践。

在jmeter中怎么提取数据_Jmeter正则提取请求响应数据相关推荐

  1. Jmeter===Jmeter中使用CSV Data Set Config参数化不重复数据执行N遍(转)

    Jmeter中使用CSV Data Set Config参数化不重复数据执行N遍 要求: 今天要测试上千条数据,且每条数据要求执行多次,(模拟多用户多次抽奖) 1.用户id有175个,且没有任何排序规 ...

  2. linux sed 正则提取字符串,Shell中使用grep、sed正则提取和替换字符串

    Linux中使用grep正则提取字符串 echo office365 | grep -P '\d+' -o find . -name "*.txt" | xargs grep -P ...

  3. ASP.NET Web API 记录请求响应数据到日志的一个方法

    原文:ASP.NET Web API 记录请求响应数据到日志的一个方法 原文:http://blog.bossma.cn/dotnet/asp-net-web-api-log-request-resp ...

  4. jmeter中变量的作用范围_Jmeter参数化方式总结

    参数化概念 测试工作中,通常会使用不同的数据发送请求测试不同的场景来实现测试的全面性,这就需要对一些字段进行参数化,以使每次迭代都使用不同的数据来满足我们的测试需求. Jmeter做为常用的功能.性能 ...

  5. php正则获取html中所有的src,php正则提取html图片(img)src地址与任意属性

    简单版: header("Content-Type: text/html;charset=utf-8"); $str = ' 2014年 '; $imgpreg = "/ ...

  6. python数据包头_Python爬虫-请求响应包头

    请求响应包头 请求报头(Request Headers) 1. Host (主机和端口号) Host:对应网址URL中的Web名称和端口号,用于指定被请求资源的Internet主机和端口号,通常属于U ...

  7. 请求响应数据?Controler层注解!

    目录 1. 请求 1.1概述 1.2 简单参数 1.2.1 原始方式 1.2.2 SpringBoot方式 1.2.3 参数名不一致 1.3 实体参数 1.3.1 简单实体对象 1.3.2 复杂实体对 ...

  8. vue使用ajax提交数据,vue使用ajax请求后台数据的方法

    vue使用ajax请求后台数据的方法 发布时间:2020-10-15 16:54:41 来源:亿速云 阅读:108 作者:栢白 这篇文章主要介绍了vue使用ajax请求后台数据的方法,具有一定借鉴价值 ...

  9. jmeter中变量的作用范围_Jmeter里的用户定义变量和用户参数区别是什么?

    在一次导游平台的项目中,初始调试脚本阶段,我将需要一些参数都写死放在用户定义变量中. 就是下图这个东西,重点注意timestamp这个参数 脚本调试通过后,做并发调试,发现每次请求的参数值,times ...

  10. Popular MVC框架请求响应数据加解密@Decrypt和@Encrypt的使用示例

    简介 此项目用于演示popularmvc如何提供统一全自动化的API隐私数据保护,并且可以做到业务无感和灵活指定数据加解密算法. 请求数据加密使用@Decrypt注解,响应信息加密使用@Encrypt ...

最新文章

  1. Solr配置与简单Demo[转]
  2. java符号引用 直接引用_JVM的符号引用和直接引用
  3. linux系统判断是否重启、关机、查询登录诊断分析简介
  4. oracle dbms_crypto,Oracle的dbms_obfuscation_toolkit加密解密数据
  5. 拥有5大核心竞争力的华为云GaussDB,成SACC2021最靓那一个…
  6. java接口返回类,Java接口和返回类型 - java
  7. 使用Xcode Instruments Leak解决内存泄漏问题
  8. java 中间件介绍_java中间件有哪些?java常用中间件介绍
  9. HTML5前端开发之基础篇
  10. 建立时间与保持时间计算
  11. 【编程题】【Scratch二级】2020.06 小鸡捉害虫​
  12. 科创人·StreamNative翟佳:开源模式价值为王,基础软件的未来在国内社区
  13. 畅谈癌症的过去现在未来
  14. 如何做好项目规划?以及项目规划常用的管理软件盘点
  15. am335x_gpio
  16. 安装Linux Mint 18.2后要做的20件事
  17. 软件定义存储(SDS)之入门
  18. Centos7安装远程桌面
  19. 你的软件也能挣钱 共享软件走向国际指南
  20. 文本表示(Text Representation)之词集模型(SOW)词袋模型(BOW)TF-IDF模型

热门文章

  1. 软考资料合集/软考真题合集(软件设计师/网络工程师/系统分析师/系统架构师/软件测评师/程序员等)
  2. 抖音直播预告开通条件是什么?
  3. 优质文章推荐(第一期)
  4. c语言funcode空格消失的函数,funcode海底世界练习c语言
  5. SPSS常用方法及操作
  6. CMS系统评测,主流自助建站系统比较排名
  7. 达内学子商城项目简述(SSM+ecplise+tomcat8+mysql)
  8. ssm-学子商城-项目第十三天最后一天完成项目
  9. 影集电子相册制作系统普及版 39.9.7已注册版
  10. android 设备实现定时重启(无root权限或已root)