jmeter基础系列——关联
admin
2023-02-20 05:40:05
0次

   jmeter脚本包含很多请求,而请求之间很可能存在某种关联。关联即为上下文之间的连接,通过前面请求得到的响应,作为后文的输入,以此根据前文不同的响应,做出不同的处理。
  比如登录,登录时获取的token,可通过关联获取得到,后面的各种请求都需要以该token作为参数传送,才能正常访问页面资源。
  jmeter关联的方式有三种,分别是正则表达式提取器,Xpath Extractor和JSON Extractor。

1、正则表达式提取器

在取样器(如HTTP请求),选择后置处理器——正则表达式提取器,即可使用。
下面以提取初始token为例,讲述下如何提取所需信息。

先添加一个HTTP请求

jmeter基础系列——关联

点击运行,在结果树中查看响应信息。本例,我们需要提取的是data的值,作为token
jmeter基础系列——关联

在HTTP gettoken的请求中,添加正则表达式提取器,填入如下信息。
jmeter基础系列——关联

 解释:
 (1)引用名称:下一个请求要引用的参数名称,如填写token,则可用${token}引用它。
 (2)正则表达式:()括起来的部分就是要提取的。此部分需了解正则表达式的方法,在此不细说。
 (3)模板:用$$引用起来,如果在正则表达式中有多个正则表达式(由多个括号提取),如$2$,表示解析到的第2个值,$1$表示解析到的第1个值。
 (4)匹配数字:0代表随机取值,1代表全部取值,通常情况下填0。
 (5)缺省值:如果参数没有取得到值,那默认给一个值让它取。
 
添加一个新的请求,该请求可获取上面的值作为token。引用格式为{token_g1}。g1表示提取的第一个值(如有多个token,g2表示第二个)。
jmeter基础系列——关联

然后点击运行,在结果树可看到,新请求中的token参数值与前文获取的data值一致,表示提取成功。
jmeter基础系列——关联

2、Xpath Extractor

XPath Extractor是另一个可被用来提取页面给定内容的Post Processor(后置处理器),XPath Extractor的使用方式与正则表达式处理器类似,只不过需要在该Extractor中指定的不是正则表达式,而是给定的XPath路径
jmeter基础系列——关联
当提取的文本时页面上的元素时,Xpath Extractor比较方便好用。Xpath可在浏览器通过F12,获取所需元素的表达式。

3、JSON Extractor

JSON Extractor与Xpath Extractor很相似,光听名字就知道。对于响应结果为JSON格式的数据,用JSON Extractor进行提取会更为方便和优雅。上一个例子说明下如何使用:

假如需要从下面的url中提取userType的值,响应结果以json格式显示,可清晰的看到层级关系。
jmeter基础系列——关联

在登录的请求上添加JSON Extractor,Variable names给提取的变量设名称,JSON Path expresstions格式如下
jmeter基础系列——关联

如果该url的响应包含多个customerinfo,要提取第二个customerinfo里面的userType,可用$.data.customerInfo[1].userType的数组形式提取。

注:如需核对是否成功提取所需变量,可在线程组添加一个debug sampler,执行脚本后,查看结果树即可知晓
jmeter基础系列——关联

 
三种关联方式各有其适用范围,都掌握这些使用方法会在编写测试脚本时如鱼得水。

如获取HTML等资源时,选择Xpath Extractor更便捷,可快速提取具体元素的属性值;
如响应格式为JSON,选择JSON Extractor无疑更方便;
若进行接口测试,请求的响应不是页面元素的形式,则应用正则表达式进行提取。

睿江云官网链接:https://www.eflycloud.com/home?from=RJ0035

相关内容

热门资讯

空调连续工作多久需要停机休息 空调连续工作的时间取决于多个因素,包括空调的型号、功率、使用环境和维护情况等。一般来说,空调可以连续...
空调哪个符号是除湿的 空调除湿功能通常用一个水滴形状的符号表示。不同品牌和型号的空调遥控器可能会有所差异,但一般来说,除湿...
格力空调多长时间加一次氟利昂 1、一般情况下,空调对氟利昂的使用量是非常小的,所以在空调使用了四年左右的时候再考虑加也没问题。2、...
空调用多长时间需要加氟一次 一般情况下是五年。当出现以下这几种情况时,空调才需要加氟。1、空调的室内机和室外机各有两个接口,当接...
格调生活·C标思享荟:卡萨帝在... 9月12日的郑州龙湖金融岛,夜风轻拂,灯光璀璨。“C标时刻共传奇——卡萨帝思享荟暨20周年品牌盛典郑...
品牌价值破千亿、高端份额持续领... 9月12日,“C标时刻共传奇——卡萨帝思享荟暨20周年品牌盛典郑州站”在郑州龙湖金融岛举办。2026...
空调主板坏了修800还是换新的 空调主板坏了是修还是换新,需要考虑多个因素,以下是一些建议:1. 维修成本:如果维修费用较低,比如 ...
空调开多久需要休息多长时间 问题:空调开多久需要休息多长时间回答:1、在使用空调的过程中,一般空调开7~8个小时左右需要休息2~...
中央空调多长时间清洗一次 1、一般空调开机前清洗一次即可,空调开机中间时段再清洗一次,空调关机时清洗一次,这样比较合理。2、空...
中央空调氟利昂多久加一次 看空调制热和制冷程度,很多人的观点认为氟利昂必须一年放一次,其实这个观点是错误的,理解上面有点偏差,...