一、正则表达式
1.正则表达式定义和目的
正则表达式定义:是对字符串操作的一种逻辑公式。简单说:事先定义好一些特定字符,以及这些特定字符的组合组成一个“规则字符串”
目的:和一串字符进行匹配
2.正则表达式的使用步骤
实例说明:
步骤一:请求->添加->后置处理器->正则表达式提取器
步骤二:正在表达式的利用
正则表达式,用文本格式,因为json格式,取左右边界的时候,格式有误
3、正则表达式的常用方式
①正在表达式第一种方式:按照左右边界取;"token":"(.+?)" 。 模板:$1$
():封装了待返回的匹配的字符串
.:匹配任何字符串
+:一次或多次
?:不要贪婪,在找到第一个匹配项后就停止了
.*:任意字符
\d:数字字符匹配,等效于【0,9】
比如:token的获取,满足左右边界后,就停止
②正在表达式第二种方式:按照长度来取:"token":"(.{1,88})" 。模板:$1$
③正在表达式第三种方式:按照长度来取:"mobile":"(\d{1,11})"或者 "mobile":"(\d.+?)"
。模板:$1$
④正在表达式第四种方式(json串方式):JSON提取器获取
步骤一:添加JSON提取器
在HTTP请求后添加:JSON提取器,HTTP请求->添加->后置处理器->JSON提取器
JSON提取器有四种参数:
Variable names:变量名称,随便取值
JSON Path Expression:JSON表达式,如:$.data.token
Match Numbers:匹配哪个,可为空,即默认第一个
Default Value:未取到值的时候默认值
根据返回形式获取JSON表达式
步骤二:添加Debug Sampler:查看是否获取成功
线程组->添加->取样器->Debug Sampler
调试的时候,可以打印出获取到的参数信息
步骤三:添加JSON断言
HTTP请求->添加->断言->JSON断言
二、LR的关联和jmeter的正则表达式的区别
(1)jmeter正则表达式一般都是放在请求的后面;LR是一个注册函数(web_reg_save_param),放在请求前面
(2)他们都是通过设定左右边界值