• 8
  • 9
分享
  • jmeter的正则表达式提取器的用法和正则——软件测试圈
  • 饭团🍙 2022-05-11 11:38:07 字数 1196 阅读 1539 收藏 9

我们再使用jmeter请求接口时,碰到一些业务流程性的接口改怎么办,比如,我一个发布内容的接口需要用到登录接口返回的token加到请求上去才能发布内容,那在jmeter上该是如何实现的咧?

jmeter的正则表达式提取器

1、把正则表达式添加到需要提取返回内容的http请求里,添加步骤是,,右键http请求--添加--后置处理器--正则表达式处理器

图片 1.png


2、在正则表达式提取器配置设置页里,

  1. 要检查的响应字段:相当于是要提取哪个位置的内容数据

  2. 引用名称:我们把内容提取出来后要赋值给一个变量,这个变量在jmeter里就是应用名称,注意这里不能出现数字和一些乱七八糟的特殊符号,建议使用英文

  3. 正则表达式:代表这我们提取内容的这段正则表达式 (下面内容有详细简绍这个正则表达式如何填写)

  4. 模板:提取内容的模板,一般是$1$

  5. 匹配数字:设置为 1 ,表示匹配返回数组的第一个元素内容。

  6. 缺省值:不要管

图片 2.png

小注意:当配置后后我们就可以再其他地方把我们在正则表达式里设置的变量放到请求body或者是请求头里边了,这里要注意的是作用域的问题  ,假如我们再第一个接口里添加了提取器设置的变量名称,在第二个接口里才设置提取器内容的话,这样在第一个接口是没有数据的,应该这个变量还没有再第二个接口被赋值。。

小注意:当我们使用正则表达式提取器将内容提取出来后就是代入引用,只需要使用 ${引用名称} 这个放在我们需要所提取的的位置就行啦 如 token=${引用名称}

正则表达式:

():要提取的内容
.:匹配任意单个字符串
*: 匹配(*之前的符号)0次或多次
+:匹配(+之前的符号)1次或多次
?:不要太贪婪,在找到第一个匹配项后停止。
.*:匹配连续0个/多个字符
.+:匹配连续1个/多个字符
\ :转义,\.表示匹配字符.本身

小技巧:当我们要验证我们的正则表达式是否正确囊括的内容是否是我们需要的内容时,我们再jmeter里可以验证

1、请求后在查看结果树的页面里,点击我们想要提取数据的那一条结果信息,然后选择regexp tester,会在相应结果下面出现一个文本输入框,在输入框内输入我们的正则表达式后点击右侧的test就能出现我们的匹配内容啦

图片 3.png

2、实验出结果,假设我要提取content=“”webkit“”里的webkit这个数据内容,我再输入框里输入正则表达式  ="force-rendering" content="(.+?)"/>,然后可以看到我们的结果已经出来了,数据以及拿到,见下图

图片 4.png

然后我们就可以将我们验证通过的正则表达式  ="force-rendering" content="(.+?)"/>  复制粘贴到我们添加的功能”正则表达式提取器“里的”正则表达式“里面啦。

 

作者:不吐葡萄皮啊

原文链接:https://blog.csdn.net/m0_58002043/article/details/120997214

  • 【留下美好印记】
    赞赏支持
登录 后发表评论
+ 关注

热门文章

    最新讲堂

      • 推荐阅读
      • 换一换
          •   从 1993 年开始,ext2 已经走过了 31 个年头,现在是它退休的时候了。尽管 Linux 6.9 带来了许多巨大的变化和新功能/硬件支持,但它却弃用了经典的 EXT2 文件系统驱动程序。  EXT2 文件系统已经存在了三十年,EXT3 和 EXT4 在 Linux 内核中稳定运行也分别有二十多年和十五年了。EXT2的使用率一直在下降,很可能只是用于访问旧的存储设备/传统的Linux发行版安装。  不过,由于文件系统驱动程序不支持 2038 年以后的日期(Y2038 问题的一部分),EXT2 现在已被弃用。由于无法正确支持 2038 年 1 月 19 日之后的时间戳,Linux 开发...
            0 0 451
            分享
          •   车载测试  1、你都知道哪些can工具,测试时用到的功能有哪些?  can工具是能向车仿真发送can信号的一类工具的统称,常见的有  busmaster?canoe?cantest 等等  虽然软件的名字有很多,软件的功能细节有差异,但是针对测试使用的功能通常都是以下几种:  接收can信号  仿真发送can信号  抓日志(保存信号信息)  编写自动化脚本(高级功能)  2、busmaster工具怎么发送can仿真信号?  1)点击“transmit windows”功能键,弹出“Configure Transmission Messages-CAN”窗口。  2)双击“Tx F...
            0 0 270
            分享
          • 摘要:         有些人认为探索性测试是一项低成本思维的任务,测试人员只是浏览应用程序,看看会出现什么。然而我们不应该忽视这样做,因为有时它确实揭示了一些有趣的错误,但是测试人员在探索应用程序时可以遵循一些技术和模式。让我们来看一个在探索性测试中使用的两步过程。        我认为软件工程中最被低估的测试类型是探索性测试。有些人认为这是一个不费力的任务,测试人员只是浏览应用程序,看看会出现什么。  ...
            0 0 1105
            分享
          •   测试用例设计技术和方法,其目的是为了解决测试分析与设计过程中碰到的问题,纯粹的理论只是应用技术和方法的基础,但不是目的。测试用例分析与设计过程,需要我们不断的应用结构化思维、发散性思维和可视化思维,以构建系统化的测试分析与设计框架。  我将我写的《软件测试设计》书中的一些测试用例技术与方法的思维导图分享给大家,希望对大家有所帮助。测试用例分析与设计过程中,大家需要注意的是:  1、解决问题是目的,技术与方法是帮助解决问题的基础,但不要本末倒置;  2、通过分析与设计得到测试用例的过程,必须要在其中构建测试模型,其中的主要输入来自被测对象的领域知识和题主所说的测试技术与方法;  3、每个测试...
            11 11 2506
            分享
          •   百度文心一言App已在苹果应用商店AppStore上架,App体积为46.1MB。实测发现,用户可用百度账号登陆,不过对于未获得授权用户,仍需要申请体验权限。  文心一言是百度的大语言模型,提供了人机智能问答、文本创作、图片生成等功能。今年4月,由于“文心一言”盗版App泛滥,百度对苹果公司及相关开发者团队发起诉讼。百度公司当时表示,“目前文心一言没有任何官方App!在我司官宣前,凡是在AppStore和各种应用商店看到的‘文心一言’App都是假的”。  截至发文,百度未对文心一言App上线AppStore进行回应。作者:佚名原文链接:新浪科技_新浪网(sina.com.cn)
            0 0 1319
            分享
      • 51testing软件测试圈微信