专栏首页自学测试之道性能测试-Jmeter正则表达式提取

性能测试-Jmeter正则表达式提取

jmeter中,接口自动化的关键在于参数关联。比如需要登录的接口,如何调用登录口令?一个增删改查的闭环,如何将接口参数上下传递?在jmeter中,可以利用正则表达式提取器来帮助我们完成这一动作。

1、正则表达式提取器

右键添加后置处理器→正则表达式提取器,正则表达式提取器界面如下:

说明:

后置处理器:在请求结束或者返回响应结果时发挥作用

正则表达式提取器:允许用户从服务器的响应中通过使用perl的正则表达式提取值。该元素会作用在指定范围取样器,用正则表达式提取所需值,生成模板字符串,并将结果存储到给定的变量名中。

APPly to:作用范围(返回内容的断言范围)

>Main sample and sub-samples:作用于父节点的取样器及对应子节点的取样器

>Main sample only:仅作用于父节点的取样器

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

>JMeter Variable:作用于jmeter变量(输入框内可输入jmeter的变量名称)

要检查的响应字段:需要检查的响应报文的范围

>主体:响应报文的主体

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

> Body as a Document:从不同类型的文件中提取文本,注意这个选项比较影响性能

> Response Headers:响应信息头

>Request Headers:请求信息头

> URL:统一资源定位符,即Internet上用来描述信息资源的字符串

>Response Code:响应状态码,比如200、404等

>Response Message:响应信息

2、正则表达式引用

引用名称:定义一个变量,供后续请求引用

一般(.+?)和(.*?)能够满足我们80%的使用场景。所以,一般的正则表达式都可以写成下面这2种

左边界(.+?)右边界

左边界(.*?)右边界

left对应匹配目标的起始字符

right对应匹配目标的结束字符

正则表达式:利用正则将需要的数据提取出来

() 括起来的部分就是需要提取的,对于你要提的内容需要用小括号括起来

. 点号表示匹配任何字符串

+ 一次或多次

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

模板:用$$引用起来,如果在正则表达式中有多个正则表达式(多个括号括起来),则可以是$N$等,表示提取第N个括号里面的值

匹配数字 -1:表示取所有返回值,此时提取结果是一个数组,其余正整数代表第几个匹配的内容提取出来。如果匹配数字选择的是-1,后续还可以通过${XXX_1}的方式来取第1个匹配的内容,${XXX_2}来取第2个匹配的内容。

匹配数字1:表示取第一个返回值

匹配数字0:表示随机取一个返回值

缺省值:正则匹配失败时取的值

3、示例

a.提取一个Name

b.提取全部Name

c.表达式同时提取Name和population,并传出两个参数

d.条件判断取值

本文分享自微信公众号 - 自学测试之道(zxceshi),作者:自学测试之道

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2019-12-31

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 性能测试-Jmeter服务器性能监控

    最近很火的“病毒”,搞得人心惶惶。大家记得戴口罩啊。新的一年:祝大家事事顺心,阖家欢乐,心想事成!

    用户6367961
  • 性能测试-Jmeter环境搭建

    jmeter是一款优秀的开源性能测试工具,目前最新版本5.1.1版本,官网文档地址:http://jmeter.apache.org/usermanual/in...

    用户6367961
  • 关于面试,你是如何面对的呢?

    面试,对于职场的人来说每个人都必须经历的。那作为职场人,看到很多案例,总结的不太笼统,那么该如何面对经常问的话呢?该如何回答比较好呢?以下是通过多个事例进行汇总...

    用户6367961
  • JMeter通过正则表达式、JSON提取器获取变量

    1. JSON提取器是专门用来对返回的响应结果是application/json格式的报文进行提取,如下所示

    jmeter技术研究
  • 在CentOS 7上安装Magento(Install Magento on CentOS 7 译文)

    原文作者:null 原文地址:https://www.linode.com/docs/websites/ecommerce/install-magento-...

    Steve Wang
  • 手把手教你用jumpserver搭建堡垒机!

    ? 作者:my_bai 来源: http://blog.csdn.net/my_bai/article/details/62226474 首先,jumps...

    小小科
  • 在CentOS 7上安装Magento

    在这篇教程中,您将学习如何在CentOS 7上安装Magent。Magento Community Edition(CE,即社区版)是一个免费的开源电子商务平台...

    Steve Wang
  • 6-Flink重启策略

    王知无
  • Spring AOP切点表达式详解

    面向对象编程,也称为OOP(即Object Oriented Programming)最大的优点在于能够将业务模块进行封装,从而达到功能复用的目的...

    用户4143945
  • Flink从入门到放弃-Flink重启策略

    王知无

扫码关注云+社区

领取腾讯云代金券