前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >通过案例带你轻松玩转JMeter连载(24)

通过案例带你轻松玩转JMeter连载(24)

作者头像
顾翔
发布2021-11-12 14:46:14
6660
发布2021-11-12 14:46:14
举报

6.2 后置处理器/提取器 1 正则表达式提取器 正则表达式提取器,由正则表达式来得到所需要的内容。通过右键点击菜单,选择“添加->后置处理器->正则表达式提取器”而获得。其界面如图33所示。

图33 正则表达式提取器

  • Apply to:作用范围,返回内容的断言范围。

Ø Main sample and sub-samples:作用于主节点的取样器及对应子节点的取样器。 Ø Main sample only:仅作用于主节点的取样器。 Ø Sub-samples only:仅作用于子节点的取样器。 Ø JMeter Variable:作用于JMeter变量(输入框内可输入JMeter的变量名称),从指定变量值中提取需要的值。注意输入的是变量名(var),而不是变量值(${var})。

  • 要检查的响应字段。

Ø 主体:响应报文的主体,这个选项最为常用。 Ø Body(unescaped):主体,是替换了所有的HTML转义符的响应主体内容,注意HTML转义符在处理的时候不考虑上下文,因此可能有不正确的转换,所以不太建议使用。 Ø Body as a Document:从不同类型的文件中提取文本,注意这个选项会影响性能,也不太建议使用。 Ø 信息头:响应报文的信息头(英文Response Headers,中文翻译有误)。 Ø Request Headers:请求报文的信息头。 Ø URL:请求的URL。 Ø 响应代码:响应的状态码,比如200、404、403等。 Ø 响应信息:响应短语。

  • 引用名称。正则表达式提取器获取到数据存储的变量名。比如:token,将提取到的结果存入到参数为token的变量中,通过${token}获得其值。
  • 正则表达式:使用的正则表达式。正则表达式的基本使用方法可参考官方文档,在本书中不做更详细地介绍。我在工作中用的做多的是(.*?)。
  • 模板(Template):正则表达式的提取模式。如果正则表达式有n个提取结果,则结果模板为12...n,表示把解析到的第几个值赋给变量。
  • 匹配数字(Match No):正则表达式匹配数据的结果可以看作是一个数组,表示如何取值。

Ø 0:表示随机(默认值); Ø负数:表示提取所有结果,它们将被命名为<变量名>_N(其中N从1到结果数);

Ø N:表示提取第N个结果。如果此N大于匹配数量,则不返回任何内容。将使用默认值。

  • 缺省值:匹配失败时候的默认值;通常用于后续的调试,比如:Null等。

结合第3.2-1节和第4.2节,可以看到,如果正则表达式中参数仅m个参数(m为大于1的整数),引用名称为var。

  • var:提取到的字符串,如果匹配的个数多于一次,这里取默认值。
  • var _n:第n次匹配到的字符串(n为大于1的整数)。如果总共就匹配到一个,没有这个变量。
  • var_n_g:第n次匹配到的字符串个数。
  • var_n_g0:包含var _n(或var)正则表达式的字符串,其中的匹配部分用匹配到的字符串替换。
  • var_n_ g1:匹配到的字符串。
  • var_matchNr:匹配到的个数。
  • var_n_ g1:匹配到的第一个字符串。
  • var_n_ g2:匹配到的第一个字符串。
  • ......。
  • var_n_ gm:匹配到的第m个字符串。

我们可以通过{var}、{var _n}、{var_n_g}、{var_n_g0}、{var_n_g1}、hellip;. 、{var_n_gm}、${name_matchNr}来获得这些值。

2 边界提取器 边界提取器,由左右边界来得到所需要的内容。通过右键点击菜单,选择“添加->后置处理器->正则表达式提取器”而获得。其界面如图34所示。

图34 边界提取器

  • Apply to:同正则表达式提取器中对应的字段。
  • 要检查的响应字段同正则表达式提取器的字段。
  • 引用名称。边界提取器获取到数据存储的变量名。
  • 左边界:要提取字符串的左边的字符串。
  • 右边界:要提取字符串的右边的字符串。
  • 匹配数字:同正则表达式匹配数字。
  • 缺省值:同正则表达式缺省值。

其参数的表示方法与正则表达式提取器也是相似的。如果边界提取器来提取的,均可以用正则表达式提取器来获取,反之则不行。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2021-11-01,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 软件测试培训 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
数据保险箱
数据保险箱(Cloud Data Coffer Service,CDCS)为您提供更高安全系数的企业核心数据存储服务。您可以通过自定义过期天数的方法删除数据,避免误删带来的损害,还可以将数据跨地域存储,防止一些不可抗因素导致的数据丢失。数据保险箱支持通过控制台、API 等多样化方式快速简单接入,实现海量数据的存储管理。您可以使用数据保险箱对文件数据进行上传、下载,最终实现数据的安全存储和提取。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档