jmeter总结之:Regular Expression Extractor元件

  • Regular Expression Extractor是一个后处理器元件,使用正则从服务器的响应中提取数据,并将这些数据保存到JMeter变量中,以便在后续的请求或断言中使用。在处理动态数据或验证响应中的特定信息时很有用。

  • 添加Regular Expression Extractor元件:选中HTTP请求(HTTP Request) - 右键-添加(Add)-后置处理器(Post Processors)-选择正则表达式提取器(Regular Expression Extractor)

  • 元件配置

    【Apply to】 :作用范围

    (1)Main sample and sub-samples:作用于主节点的取样器及对应子节点的取样器

    (2)Main sample only:仅作用于主节点的取样器,也是默认的选中的选项

    (3)Sub-samples only:仅作用于子节点的取样器

    (4)JMeter Variable:用于jmeter变量,输入框内输入jmeter的变量名称,从变量值中提取需要的值
    【Filed to check】 :匹配范围

    (1)Body:响应报文的主体,最常用,也是默认选项

    (2)Body(unescaped):是替换了所有的html转义符的响应主体内容,注意html转义符处理时不考虑上下文,因此可能有不正确的转换,不太建议使用

    (3)Body as a Document:响应信息作为文本去匹配,注意这个选项比较影响性能

    (4)Response Headers:响应信息头

    (5)Request Headers:请求信息头

    (6)URL:请求url

    (7)Response Code:响应状态码,比如200、404等

    (8)Response Message:响应信息
    【Name of created variable】 : 引用名称,其他地方引用时的写此变量名称
    【Regular Expression】 :正则表达式,()括号里为你要获取的的值。在输入正则表达式之前,可以添加一个View Results Tree组件,发送一次请求,验证一下正则表达式的匹配结果

    【Template】 :模板,形式是1 ,中间数字代表正则表达式第几组括号的匹配。 0 是特殊情况,所有字符串匹配
    【Match No】 :匹配数字,正则表达式可能匹配到多个结果,匹配数字即取第几个结果。-1表示全部,0随机,1第一个,2第二个,以此类推。若只要获取到匹配的第一个值,则填写1
    【Default value 】:匹配失败时的默认值。可以不写。

  • 引用变量:在Regular Expression Extractor配置完成后,通过${变量名}的格式来引用这些变量。引用时写的变量名称,便是Name of created variable配置的变量名称。

  • 增加调试器,注意调试器也是在请求下的,在调试器中可查看匹配出的结果

  • 注意事项:Regular Expression Extractor是后处理器元件,它提取的数据仅在其所在的线程组或请求范围内有效,不支持直接跨线程组使用变量。所以在使用这个元件的时候,需要进来避免跨线程组使用。

附一些正则的元字符:

相关推荐
网络安全指导员6 小时前
如何在JMeter中配置断言,将非200状态码视为测试成功
网络·学习·jmeter·安全·web安全·架构
侧耳倾听1116 小时前
性能测试之jmeter的基本使用
jmeter
WIN赢8 小时前
Jmeter的压测使用
jmeter
海姐软件测试2 天前
Postman参数化设置如何设置?
开发语言·jmeter
lifewange2 天前
Jmeter面试题
jmeter
一棵树长得超出它自己2 天前
jmeter if控制器在loop控制器执行结束后执行
前端·jmeter
zzhz9253 天前
Jmeter(性能指标、指标插件、测试问题、面试题、讲解稿)
java·jvm·jmeter
熙客3 天前
Jmeter-负载测试
jmeter·压力测试
ylatin3 天前
jmeter web压力测试 压测
jmeter·压力测试
zzhz9254 天前
Jmeter操作(数据库)
数据库·jmeter