Jmeter后置处理器-正则表达式提取器

来源:互联网 发布:如何判断存在sql注入 编辑:程序博客网 时间:2024/04/20 02:01
 

Jmeter中正则表达式提取器使用详解


在使用Jmeter过程中,会经常使用到正则表达式提取器提取器,虽然并不直接涉及到请求的测试,但是对于数据的传递起着很大的作用,本篇博文就是主要讲解关于正则表达式及其在Jmeter的Sampler中的调用。

文中使用的正则表达式测试器(RegexTester)下载地址:http://soft.hao123.com/soft/appid/54251.html

一、首先来介绍一下J meter中正则表达式提取器的元素组成,下图所示:

这里写图片描述

下面是各参数值的含义:

参数释义引用名称在HTTP等请求中,引用此数据,需要用到的名称正则表达式用于将需要的数据提取出来模板表示使用提取到的第几个值:
$-1$:表示取所有值
$0$:表示随机取值
$1$:表示取第1个
$2$:表示取第二个
以此类推:$n$:表示取第n个匹配数字(0代表随机)0 代表随机取值,1 代表全部取值缺省值如果正则表达式没有搜找到值,则使用此缺省值


二、下面是第一个比较简单的例子,就是正则表达式的匹配值只有一个取值,正则表达式测试如图:

这里写图片描述

这种最简单的情况在Jmeter正则表达式提取器和HTTP请求中的设置如下:

这里写图片描述

三、下面的例子是正则表达式的匹配值有两个取值,正则表达式测试如图:

这里写图片描述

这种情况在Jmeter正则表达式提取器和HTTP请求中的设置如下:

这里写图片描述

四、一种不是很常见的情况是有若干个匹配数据,使用正则表达式测试器测试的结果如下:

这里写图片描述

若希望取到17这个值,则对应的是第二列第二行($2$, ${javawd_g2}),如果是第三列第四行的数据,则对应的是($3$,${javawd_g4})

这种情况在Jmeter正则表达式提取器和HTTP请求中的设置如下:

这里写图片描述