接口测试(十)jmeter——关联(正则表达式提取器)

一、正则表达式

  1. 常用的元字符
    元字符:用来匹配相关字符
    万能匹配表达式: .*?
    所有log结尾的文件:*.log
代码 说明
. 匹配除换行符以外的任意字符
\w 匹配字母或数字或下划线或汉字
\s 匹配任意的空白符
\d 匹配数字
\b 匹配单词的开始或结束
^ 匹配字符串的开始
$ 匹配字符串的结束
  1. 常用的限定符
    限定符:限定元字符匹配的次数
代码 说明
* 重复零次或更多次
+ 重复一次或更多次
? 重复零次或一次
{n} 重复n次
{n,} 重复n次或更多次
{n,m} 重复n到m次
  1. 示例
    方法:找准左右边界,用万能表达式 .*?
    示例1:
javascript 复制代码
{"code":"0","msg":"操作成功","data":"496956"}

通过正则表达式获取 data,正则表达式:"data":"(.*?)"}

在线验证网站:http://tool.oschina.net/regex/

示例2:

javascript 复制代码
{"code":"0","msg":"操作成功","data":{"token_info":{"token_type":"Bearer","expires_in":"2022-12-14 18:43:17","token":"eyJhbGciOiJIUzUxMiJ9.eyJ1c2VyX2lkIjoiODkwOTAiLCJleHAiOjE2NzEwMTQ1OTd9.8WABoFYURRoSGO12oE8uO3xsKqeEktaaqvWR-VyKlSbsZbln9JSq8UNyT-uCO_pssa33_9jRoyRUc-c5suNy1Q"},"phone":"15219081119","user_name":"d1119","id":89090,"type":false}}

通过正则表达式获取 token,正则表达式:"token":"(.*?)"}

示例3:

javascript 复制代码
{"code":"0","msg":"操作成功","data":{"id":89090,"userName":"d1119","phone":"15219081119"}}

通过正则表达式获取 id,正则表达式:{"id": (.*?),

二、正则表达式使用方式

  1. 在【HTTP请求-短信验证码】的子级下添加【正则表达式提取器】
  2. 【正则表达式提取器】
  • 引用名称 :可自定义设置,引用方法 :${引用名称}
  • 正则表达式:数据提取器,()括号里为你要获取的值。常见的形式(.*?)
  • 模板: 对应正则表达式提取器类型
    若只有一个正则表达式,一般填写 1
引用组语法
1 1 1 引用组1
2 2 2 引用组2
0 0 0 引用整个表达式匹配的内容
  • 匹配数字
匹配数字
-1 表示全部
0 随机
1 第一个
2 第二个
  • 缺省值:匹配失败时的默认值ERROR,可以不写
  1. 【正则表达式提取器】中【引用名称】为code,传入【HTTP请求-注册】请求体中

相关推荐
跨境数据猎手4 小时前
跨境电商系统JMeter 和 Gatling 分工
jmeter
BruceXu7 小时前
\b 在中文里会静默失效:三个正则坑和一份能用的字符边界方案
正则表达式
han68891 天前
jmeter操作数据库
数据库·jmeter
阿昭L1 天前
正则表达式
正则表达式·编译原理
波力海苔夹心脆6752 天前
C# 正则表达式零基础入门:从“看得懂“到“会用“
经验分享·后端·mysql·正则表达式·c#
FRing033 天前
JavaScript入门到精通二十四(正则表达式、元字符、修饰符)
开发语言·前端·javascript·正则表达式
川石课堂软件测试3 天前
涨薪技术|0到1学会性能测试第8课-Analysis分析图
服务器·数据库·python·sql·jmeter·mysql·容器
川石课堂软件测试4 天前
JMeter异步接口测试实战
数据库·python·jmeter·mysql·kubernetes·测试用例·prometheus
小白快快跑哦5 天前
python-字符串全解(六):正则表达式-元字符与转义
python·正则表达式·字符串·元字符·转义
zuozewei6 天前
第02篇-k6-脚本结构与生命周期
软件测试·jmeter·性能测试·k6·ai 编程