说到Jmeter正则表达式提取器的应用,就不得不说到关联。正则表达式
所谓关联,就是把应用中动态变化返回的数据获取到,把它保存为一个参数,提供给后面须要用到的地方进行使用。数组
Jmeter中关联是经过“添加—后置处理器—正则表达式提取器”来获取数据,且注意正则表达式提取器附在须要获取数据的某个采样器之下,数据通常从“查看结果树“的响应数据获取。3d
1、获取单个数据调试
举例:获取用户列表的结果以下,须要将"mobilephone":"158****1763" 手机号码取出用来进行登陆操做blog
一、在获取用户列表请求下面添加—后置处理器—正则表达式提取器字符串
正则表达式提取器说明:模板
Apply to:应用范围。登录
要检查的响应字段:样本数据源。变量
引用名称:其余地方引用时的变量名称,我这里写的phone,可自定义设置。mobile
引用方法:${引用名称}
正则表达式:数据提取器,()括号里为你要获取的的值。"mobilephone":"( 至关于LR左边界, )","leaveamount"至关于LR右边界。而括号里\d+为正则表达式,用来匹配所须要获取的数据,何谓正则表达式文章末尾会附上说明
模板:$$对应正则表达式提取器类型。-1所有,0 随机,1第一个2第二个,以此类推,若只有一个正则通常就填写$1$
匹配数字:正则表达式匹配数据的全部结果能够看作一个数组,匹配数字便可看作是数组的第几个元素。-1表示所有,0随机,1第一个,2第二个,以此类推。若只要获取到匹配的第一个值,则填写1
缺省值:匹配失败时的默认值。能够不写。若需用于后续逻辑判断,可简单写为 ERROR。
二、在获取用户列表添加的 Debug PostProcessor 为调试所用,通常用于查看获取的变量值。
从执行结果中,能看到获取的值为以下:
三、在登陆请求中,将正则表达式获取的值进行引用。
2、获取多个数据
举例:在用户列表的结果中,须要将"id":82,"mobilephone":"150****7414", 用户id、手机号码都取出用来进行后续登陆、投资操做
一、注意若是包含多个正则,咱们进行以下设置
其中,咱们能够经过 Debug PostProcessor 来查看结果
从结果中,若是咱们要引用id、mobilephone的话,也就是这里user_g一、user_g4分别指代的值。
二、注意变量值在登陆、投资请求中的引用!
附正则表达式说明:
通俗点来说正则表达式就是用来匹配字符串的公式。
好比正则表达式中\d+ 是来匹配1个或更多连续的数字。