jmeter 之 后置处理器之正则表达式提取器

  1. 通过配置元件的csv data set config组件和选项的函数助手对话框可以对客户端数据进行参数化。但是,性能测试过程中有些数据不能简单通过客户端进行参数化,而是来源于服务端响应。比如:1)登录成功后服务器会返回一个登录凭证,防止csrf攻击而生成的token;2)查询订单号是通过服务端响应返回给客户端;3)用户登录,session信息不同,需保存动态的session;这些情况客户端参数化已经无法满足要求,所有,需通过后置处理器组件进行处理。

  2. 关联:将上一个请求的响应结果作为下一个请求的参数

  3. 线程组右键-》取样器-》http请求,http请求右键-》后置处理器-》正则表达式提取器

  4. 正则表达式操作符:

        ():括起来的部分就是要提取的;

           .   :匹配任何字符串;

           *  :表示任意个字符;

          ? : 在找到第一个匹配项后停止;

           \d :数字;      

           \w :字母;

           {n} :表示n个字符;

           {n,m} :表示n-m个字符;

            \s  :空白符;

            []   :表示范围;

           [0-9a-zA-Z] :数字或字母;

           + :一次或多次

注意:在用正则表达式提取值时,可以加一个debug采样器调试,慢慢调整使正则表达式取的值符合需求,可以将正则表达式提取值赋给的变量直接写成debug的名称,方便观察调试;如加了一个debug采样器,名称可以为:${name}

5、正则表达式提取器中模板所填不同值的含义:

表示使用提取到的第几个值:

$-1$:表示取所有值

$0$:表示随机取值

$1$:表示取第一个值

$2$:表示取第二个值 ,以此类推,$n$:表示取第n个值

6、匹配数字:0代表随机;1代表全部取值

另外:可以下载Regextester这个正则表达式工具,进行正则表达式调试

你可能感兴趣的:(jmeter,jmeter)