JMeter关联陌生又熟悉
JMeter关联是什么
JMeter关联,这几个字看着可能会有点陌生,实际上却是工作中经常会做的一件事情,尤其是接口自动化,它指的是把一个接口的响应作为另一个接口的参数,从而把接口关联起来。
JMeter关联是通过后置处理器来实现的,本文将介绍两个主流提取器:正则表达式提取器和JSON JMESPath提取器。
正则表达式提取器
Name
最好有业务含义的名称。
Comments
可以为空的注释。
Apply to
匹配范围。
Main sample and sub-samples
匹配当前父取样器及其子取样器。
Main sample only
仅匹配当前父取样器。
Sub-samples only
仅匹配子取样器。
JMeter Variable Name to use
匹配JMeter变量。
Field to check
匹配响应的字段,共七个选项。
Body:主体,最常用。
Body(unescaped) :替换了所有的html转义符的响应主体内容,注意html转义符处理时不考虑上下文,因此可能有不正确的转换,不太建议使用。
Body as a Document:从不同类型的文件中提取文本,注意这个选项比较影响性能。
Response Headers:响应Headers。
Request Headers:请求Headers。
URL:请求URL。
Response Code:响应代码,比如200、404返回码。
Response Message:响应信息,比如“成功”、“OK”字样。
Name of created variable
创建的变量名,比如变量名为token,通过${token}
进行访问。
Regular Expression
正则表达式。
正则表达式可阅读这篇文章进一步了解:https://dongfanger.gitee.io/blog/未分类/001-5分钟轻松学正则表达式.html
Template($i$
where i is capturing group number, starts at 1)
用$$
引用起来,如果在正则表达式中有多个正则表达式(多个括号括起来的),则可以是$1$
、$2$
等等,$1$
指第一个模板,$2$
指第二个模板,依次类推,$0$
指全文匹配,$1$$2$
指同时取第一个和第二个模板。
Match No.(0 for Random)
在匹配时往往会出现多个值匹配的情况,如果匹配数为0则代表随机取匹配值;可以用匹配数字来确定多个值中的哪一个;负数取所有值,可以与For Each Controller一起使用来遍历。
Default Value
默认值,如果没有匹配到可以指定一个默认值。
Use empty default value勾选后把空作为默认值,跟不填写效果一样。如果填写了默认值同时勾选此选项,默认值仍然为空。
JSON JMESPath提取器
Name
最好有业务含义的名称。
Comments
可以为空的注释。
Apply to
匹配范围。
Main sample and sub-samples
匹配当前父取样器及其子取样器。
Main sample only
仅匹配当前父取样器。
Sub-samples only
仅匹配子取样器。
JMeter Variable Name to use
匹配JMeter变量。
Name of created variable
创建的变量名,比如变量名为token,通过${token}
进行访问。
JMESPath expressions
JMESPath表达式。
可以访问官网进一步了解:https://jmespath.org/
Match No.(0 for Random)
在匹配时往往会出现多个值匹配的情况,如果匹配数为0则代表随机取匹配值;可以用匹配数字来确定多个值中的哪一个;负数取所有值,可以与For Each Controller一起使用来遍历。
Default Value
默认值,如果没有匹配到可以指定一个默认值。
小结
本文首先介绍了JMeter关联的概念,实际上指的就是把一个接口的响应作为另一个接口的参数,从而把接口关联起来。然后分别以元件编辑区为内容,讲解了JMeter关联常用的两个后置处理器:正则表达式提取器和JSON JMESPath提取器。
参考资料:
《全栈性能测试修炼宝典JMeter实战》
https://blog.csdn.net/weixin_43507959/article/details/104068508
https://blog.csdn.net/doubledog1112/article/details/93480458
JMeter关联陌生又熟悉的更多相关文章
- 【微信小程序项目实践总结】30分钟从陌生到熟悉 web app 、native app、hybrid app比较 30分钟ES6从陌生到熟悉 【原创】浅谈内存泄露 HTML5 五子棋 - JS/Canvas 游戏 meta 详解,html5 meta 标签日常设置 C#中回滚TransactionScope的使用方法和原理
[微信小程序项目实践总结]30分钟从陌生到熟悉 前言 我们之前对小程序做了基本学习: 1. 微信小程序开发07-列表页面怎么做 2. 微信小程序开发06-一个业务页面的完成 3. 微信小程序开发05- ...
- Jmeter关联
一.Jmeter关联的方式: Jmeter中关联可以在需要获取数据的请求上 右键-->后置处理器 选择需要的关联方式,如下图有很多种方法可以提取动态变化数据: 二.正则表达式提取器: 1.比如 ...
- Jmeter关联,正则表达式提取器使用
一.Jmeter关联的方式: Jmeter中关联可以在需要获取数据的请求上 右键-->后置处理器 选择需要的关联方式,如下图有很多种方法可以提取动态变化数据: 二.正则表达式提取器: 1.比如 ...
- Jmeter关联,正则表达式提取器使用1
Jmeter关联,正则表达式提取器使用 一.Jmeter关联的方式: Jmeter中关联可以在需要获取数据的请求上 右键-->后置处理器 选择需要的关联方式,如下图有很多种方法可以提取动态 ...
- 转 jmeter 关联
jmeter(十二)关联之正则表达式提取器 如果有这样的情况:一个完整的操作流程,需要先完成某个操作,获得某个值或数据信息,然后才能进行下一步的操作(也就是常说的关联/将上一个请求的响应结果作为下 ...
- Jmeter关联之正则表达式提取器(完整版)
Jmeter关联之正则表达式提取器(完整版) 在性能测试中,若想提取上一个请求的结果,作为下一次请求的参数,则需要使用关联~ 这篇博客主要讲jmeter正则表达式提取器的各种用法. 首先正则表达式 ...
- Jmeter关联详解
关联的概念 从上一步操作中获取需要的值,传递给下一步操作中进行引用,形成自动关联,而不是 每次操作都去手动修改关联的值.常见的场景有SessionID.Session Token值的获取. 正则表达式 ...
- Jmeter+Badboy实战经验三 Jmeter关联相关知识
1. 什么时候需要使用关联? 有些参数是动态变化的,获取之后,再次操作的时候,参数的值已经发生了变化,这种情况下就会出现脚本不可运行的问题,就需要用到了关联 2. 关联是什么概念? 3.jmeter ...
- jmeter - 关联之正则表达式提取器
如果有这样的情况:一个完整的操作流程,需要先完成某个操作,获得某个值或数据信息,然后才能进行下一步的操作(也就是常说的关联/将上一个请求的响应结果作为下一个请求的参数): 在jmeter中,可以利用正 ...
随机推荐
- Nuxt.js vue服务端渲染
一.为什么要用Nuxt.js 原因其实不用多说,就是利用Nuxt.js的服务端渲染能力来解决Vue项目的SEO问题. 二.Nuxt.js和纯Vue项目的简单对比 1. build后目标产物不同 vue ...
- C语言之漫谈指针(上)
C语言之漫谈指针(上) 在C语言学习的途中,我们永远有一个绕不了的坑,那就是--指针. 在这篇文章中我们就谈一谈指针的一些基础知识. 纲要: 零.谈指针之前的小知识 一.指针与指针变量 二.指针变量的 ...
- ASP.NET跨域访问解决
第一种: step1:添加引用(搜索CORS) step2: App_Start/WebApiConfig.cs中添加配置 step3: 在控制器中添加特性 第二种: 在App_Start/WebAp ...
- IPFS挖矿赚钱吗?IPFS挖矿是真的吗?
IPFS一出现就获得了极高的关注度,「让人类信息永存」的口号也让其蒙上了一层神秘的面纱.今天我就来给大家自剖析,一探IPFS技术的真相. IPFS是一个去中心化存储网络,而Filecoin是IPFS激 ...
- PTA 递增的整数序列链表的插入
6-4 递增的整数序列链表的插入 (15 分) 本题要求实现一个函数,在递增的整数序列链表(带头结点)中插入一个新整数,并保持该序列的有序性. 函数接口定义: List Insert( List ...
- 面试题-你听过TCP Fast Open (TFO/TCP快速打开)吗?能解释一下吗?
TCP Fast Open (TFO/TCP快速打开) TCP快速打开(TCP Fast Open,TFO)是什么? TCP快速打开(TCP Fast Open,TFO)是对TCP的一种简化握手手续的 ...
- 显示目录下的内容--ls
ls 显示当前目录下的所有文件或者文件夹,但不包括 . 和 .. ls -a 显示当前目录下的所有文件或者文件夹 ls -l ...
- 201871010113-贾荣娟 实验三 结对项目—《D{0-1}KP 实例数据集算法实验平台》项目报告
项目 内容 课程班级博客链接 18级卓越班 这个作业要求链接 实验三-软件工程结对项目 这个课程学习目标 掌握软件开发流程,提高自身能力 这个作业在哪些方面帮助我实现了学习目标 本次实验让我对软件工程 ...
- 强大的 Guava 工具类
Java 开发的同学应该都使用或者听说过 Google 提供的 Guava 工具包.日常使用最多的肯定是集合相关的工具类,还有 Guava cache,除了这些之外 Guava 还提供了很多有用的功能 ...
- 【算法学习笔记】Meissel-Lehmer 算法 (亚线性时间找出素数个数)
「Meissel-Lehmer 算法」是一种能在亚线性时间复杂度内求出 \(1\sim n\) 内质数个数的一种算法. 在看素数相关论文时发现了这个算法,论文链接:Here. 算法的细节来自 OI w ...