Jmeter正则表达式提取器

简介

Jmeter后置处理器(post processors)的一种,用于将取样器请求到的结果——以正则表达式的方式——读取出来。

用于获取 每个请求 取样器 返回的 不同内容

在这里插入图片描述

当用于获取提取器的内容时,应置于取样器下方。

Apply to(作用范围)

  • Main sample and sub-sample:匹配范围包括当前父取样器并覆盖至子取样器;
  • Main sample only:匹配范围是当前父取样器;
  • Sub-samples only:仅匹配子取样器;
  • Jmeter Variable Name to use:支持对Jmeter变量值进行匹配

Field to check(设置匹配响应字段的查找范围)

即要在多大的范围内匹配正则表达式。

  • Body:仅对响应数据的主体部分进行正则表达式匹配;
  • Body(unescaped):针对替换了转义码的Body部分 匹配正则表达式;
  • Body as a Document:对请求返回内容的文档部分进行正则表达式匹配;
  • Response Headers:只匹配信息头部分的内容;
  • Request Headers
  • URL:只匹配URL链接;
  • Response Code:匹配响应代码,比如状态码200;
  • Response Message:匹配响应信息,比如返回成功;

Name of created variable(将通过正则表达式截取到的值,存到变量中,指定该变量的名称)

当使用正则表达式从一个请求返回信息中,截取多个字段时,此处也可只填写一个变量,如下图所示。
在这里插入图片描述
此时,截取到的多个值将会以变量名_g1变量名_g2来使用,详见下图,这是自己专门实验的截图
在这里插入图片描述

  • 变量=截取的全部字段,彼此字段间以空格相隔,如上图第一行
  • 变量_g:应代表截取的变量个数?
  • 变量_g0: 根据正则表达式匹配到的(截取前的)完整字段
  • 变量_g1:截取到的第一个字段,使用时${变量名_g1}
  • 变量_g2:截取到的第二个字段,使用时${变量名_g2},如下图所示。
    在这里插入图片描述

Regular Expression(正则表达式)

可百度在线正则表达式来练习正则表达式,此处先给出一个在线正则网址

Template($1$表示会拿到第一个正则表达式匹配到的数据,待确认)

自己的理解,模板Template的含义是提取结果的返回格式模板(当你在Regular Expression(正则表达式)处设置多个提取点时,例如"errmsg":"(.*)","access_token":"(.+?)",那么提取的多个值将以模板Template设置的格式来返回给用户)

目前自己从其他网商博客了解的信息是,如果在提取器的正则表达式处填写了多个提取点(例如,"errmsg":"(.*)","access_token":"(.+?)"。这对于Jmeter来说,会将此表达式当作两个正则表达式来处理——"errmsg":"(.*)","access_token":,"access_token":"(.+?)",则可以在Template处填写$1$$2$等等。$1$代表第一个正则表达式"errmsg":"(.*)","access_token":的截取结果,$2$代表第二个正则表达式,"access_token":"(.+?)"的截取结果,依次类推(注:如果在Template处填写的$1$$2$间有空格,提取出的(.*)(.+?)也会以对应空格间隔)。

$0$指全文匹配,$1$ $2$指同时获取第一个和第二个提取点。

Match No.(第几个匹配成功的)

Default Value(当未匹配到时,使用此值返回)

用于获取 每个请求 取样器 返回的 数组内容

即获取一个请求的多条重复数据,补入这篇博客(三),是否有效待验证

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值