接口测试(十)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请求-注册】请求体中

相关推荐
开水好喝3 小时前
JMeter快速造数之数据导入导出
jmeter
weixin_399380693 小时前
Jmeter命令监控CPU等指标
jmeter
土小帽软件测试4 小时前
jmeter基础02_下载安装jmeter
测试工具·jmeter·接口测试·软件测试学习
紫晓宁5 小时前
jmeter结合ansible分布式压测--1数据准备
分布式·jmeter·ansible
紫晓宁16 小时前
jmeter结合ansible分布式压测--2jmter环境准备
分布式·jmeter·ansible
钱钱钱端17 小时前
UI自动化测试 —— CSS元素定位实践!
css·功能测试·selenium·测试工具·jmeter·ui·postman
杰仔正在努力17 小时前
Jmeter5.X性能测试
jmeter·压力测试
Winston Wood2 天前
你需要了解的正则表达式相关知识
正则表达式