前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >高级性能测试系列《15.一个正则提取器,写多个正则提取式》

高级性能测试系列《15.一个正则提取器,写多个正则提取式》

作者头像
清菡
发布2022-06-21 15:39:03
2K0
发布2022-06-21 15:39:03
举报
文章被收录于专栏:清菡软件测试清菡软件测试

目录

  • 一、后置处理器
    • 1.json提取器
    • 2.正则提取器
    • 3.一个正则提取器,写多个正则提取式
  • 二、举例说明
    • 1.使用正则表达式提取请求的参数的时候,上面的类型选的是哪个?
    • 2.一个正则提取器,写多个正则提取式,并使用提取出来的值
    • 3.正则表达式是匹配多个结果吗?
  • 三、记事本里使用正则表达式进行匹配

一、后置处理器:

  • 1.json提取器
    • 如果你的响应体json格式,那么优先选用json提取器。
    • 如果想要提取请求中的内容(请求url、请求里面的某个参数、请求的头部内容)、响应的头部内容、或者响应体格式非json格式,这个时候优先选择用正则提取器
    • json提取式:.节点名称.二级节点名称 ----- 绝对路径。..末梢节点名称 -------相对路径(推荐)。
    • 一个json提取器写多个json提取式。 多个之间,用英文分号;作为分割符。 此时,一定要写默认值(default value),否则就会报错。
  • 2.正则提取器:
    • 要检查的请求的响应字段。
    • 正则表达式中引用响应数据中的变量名称。
    • 正则表达式:左边界(正则式)右边界。
    • 模板:数字对应正则式。例如:1
    • 引用名称:随便取一个变量名称。
    • 万能正则式:.*? ====除换行符不能匹配,其它的都能匹配。
    • . 匹配除换行符以外的所有字符(包括中文、韩文、日文等)。
    • +匹配1次或多次(至少要匹配一次)。
    • \d 相当于[0-9],来匹配数字的。加上+,是至少要匹配一个的意思。
    • \w 相当于[a-zA-Z0-9_],来匹配英文字母和数字的字符串。
    • 正则表达式中[] {}有特殊的用途。
    • 正则表达式可以用于日常日志、文本中查找信息。
  • 3.一个正则提取器,写多个正则提取式:
    • 分隔符用(.*?)

绝大多数的正则表达式都是基于perl语言的,所以大多数语言里面的正则表达式都是通用的。

但是也存在一定的差异,比如javapython语言里面的正则表达式就有一些差异。

现在讲的是基于perl语言的正则表达式,所以这个和java中的正则表达式是一样的。

这个基于perl语言的正则表达式和python语言里面的正则表达式有些小区别。

参考文章:高级性能测试系列《14.响应的提取--json提取器:一个json提取器写多个提取式、正则提取器:万能正则式怎么用?》更正该文章结尾的最后2行常用正则式为:\d \d+ [0-9]+\w\w+ 英文字母或数字的字符串

二、举例说明

1.使用正则表达式提取请求的参数的时候,上面的类型选的是哪个?

url地址里面提取所需的请求的参数值:

http请求

配置正则表达式提取器

type=(.*?)&

成功提取请求的参数值

2.一个正则提取器,写多个正则提取式,并使用提取出来的值

注意: 写正则表达式的时候,英文双引号可别标反了。" "

1)在一个正则提取器中,写多个正则提取式

正则表达式:gqid":"(.*?)"(.*?)token":"(.*?)"

模板:13

匹配数字是0,意思是随机取了1个

运行结果

2)使用提取出来的值

运行结果

1代表g1,3代表g3。

3.正则表达式是匹配多个结果吗?

写多个的时候,模版中间的$不能少。

检查响应字段

例1:正则表达式中引用响应数据中的变量名称;匹配数字是-1,意思是取所有的值

正则表达式:id":(\d+),(.*?)typeDesc":"(.*?)"

例1:运行结果

例2

例2:运行结果

三、记事本里使用正则表达式进行匹配

用notepad++打开代码文件,使用正则表达式进行匹配。

1.用于文本的查找:

要选择正则表达式哦

2.文本的替换:

所以,正则表达式不局限于jmeter中使用。

脚本链接:

链接:https://pan.baidu.com/s/1G7HRDSfrk8Y25ltzO2CiEg?pwd=1234 提取码:1234

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

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

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

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

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 目录
    • 一、后置处理器:
      • 二、举例说明
        • 1.使用正则表达式提取请求的参数的时候,上面的类型选的是哪个?
        • 2.一个正则提取器,写多个正则提取式,并使用提取出来的值
        • 3.正则表达式是匹配多个结果吗?
      • 三、记事本里使用正则表达式进行匹配
        • 1.用于文本的查找:
        • 2.文本的替换:
        • 脚本链接:
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档