-
通过配置元件的csv data set config组件和选项的函数助手对话框可以对客户端数据进行参数化。但是,性能测试过程中有些数据不能简单通过客户端进行参数化,而是来源于服务端响应。比如:1)登录成功后服务器会返回一个登录凭证,防止csrf攻击而生成的token;2)查询订单号是通过服务端响应返回给客户端;3)用户登录,session信息不同,需保存动态的session;这些情况客户端参数化已经无法满足要求,所有,需通过后置处理器组件进行处理。
-
关联:将上一个请求的响应结果作为下一个请求的参数
-
线程组右键-》取样器-》http请求,http请求右键-》后置处理器-》正则表达式提取器
- 正则表达式操作符:
():括起来的部分就是要提取的;
. :匹配任何字符串;
* :表示任意个字符;
? : 在找到第一个匹配项后停止;
\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这个正则表达式工具,进行正则表达式调试