jmeter如何将上一个请求的结果作为下一个请求的参数

目录

1、简介

2、用途

3、下载、简单应用

4、如何将上一个请求的结果作为下一个请求的参数


1、简介

在JMeter中,可以通过使用变量来将上一个请求的结果作为下一个请求的参数传递。

ApacheJMeter是Apache组织开发的基于Java的压力测试工具。用于对软件做压力测试,它最初被设计用于Web应用测试但后来扩展到其他测试领域。它可以用于测试静态和动态资源例如静态文件、Java小服务程序、CGI脚本、Java对象、数据库,FTP服务器,等等。JMeter可以用于对服务器、网络或对象模拟巨大的负载,来自不同压力类别下测试它们的强度和分析整体性能。另外,JMeter能够对应用程序做功能/回归测试,通过创建带有断言的脚本来验证你的程序返回了你期望的结果。为了最大限度的灵活性,JMeter允许使用正则表达式创建断言。

Apachejmeter可以用于对静态的和动态的资源(文件,Servlet,Perl脚本,java对象,数据库和查询,FTP服务器等等)的性能进行测试。它可以用于对服务器,网络或对象模拟繁重的负载来测试它们的强度或分析不同压力类型下的整体性能。你可以使用它做性能的图形分析或在大并发负载测试你的服务器/脚本/对象。

2、用途

  1. 能够对HTTP和FTP服务器进行压力和性能测试,也可以对任何数据库进行同样的测试(通过JDBC)。

  2. 完全的可移植性和100%纯java。

  3. 完全Swing和轻量组件支持(预编译的JAR使用javax.swing.*)包。

  4. 完全多线程框架允许通过多个线程并发取样和通过单独的线程组对不同的功能同时取样。

  5. 精心的GUI设计允许快速操作和更精确的计时。

  6. 缓存和离线分析/回放测试结果。

3、下载、简单应用

下载、简单应用可参照:http://www.cnblogs.com/0201zcr/p/5046193.html

4、如何将上一个请求的结果作为下一个请求的参数

在压力测试的时候,经常要将几个流程串联起来才能将程序测试通过。如:我现在用户首先要登录,获得我登录的凭证(tokenId),之后我的请求其他的资源的时候需要带上这个凭证。才能识别你是否是合法的用户。

1)创建一个线程租

2)创建一个获取凭证的请求

3)创建后置处理器

JMeterGUI视图中右击该采样器打开右键菜单->添加->后置处理器->正则表达式提取器,打开"正则表达式提取器"会话页面并编辑其内容如下:

后置处理器是当这个请求返回后要做得事情,我这里是要从返回的内容中将我们要的tokenId获取出来。这里使用“正则表达式提取器”,用正则表达式,将我们要的内容获取出来。

4)正则表达式提取器配置

  • 引用名称是下个请求将要引用到的变量名;

  • 正则表达式是提取你想要内容的正则表达式,小括号()表示提取,也就是说对于你想要提取的内容需要用它括起来;

  • 模板是使用提取到的第几个值。因为可能有多个值匹配,所以要使用模板。从1开始匹配,依次类推。这里只有一个,所以填写$1$即可;

  • 匹配数字表示如何取值。0代表随机取值,1代表全部取值。这里只有一个,填1即可;

  • 缺省值表示参数没有取到值的话,默认给它的值。一般不填。

这个请求返回的数据如下:

{"message":"success","statusCode":200,"registerDay":"20","tokenId":"bf1017bc1bb495ae31764b306a3422885f5"}

我们现在要获取的是上面这个json字符串中tokenId的值,即

bf1017bc1bb495ae31764b306a3422885f5。

5)添加下一个请求

在这个请求中,我们要将上面的tokenId作为一个参数一并发送。

同上2)添加一个http请求(线程租右键——》添加——》Sampler——》HTTP请求)

6)添加查看结果树

7)执行后,即可通过”查看结果树“查询

 作为一位过来人也是希望大家少走一些弯路,希望能对你带来帮助。(WEB自动化测试、app自动化测试、接口自动化测试、持续集成、自动化测试开发、大厂面试真题、简历模板等等),相信能使你更好的进步!

留【自动化测试】即可【自动化测试交流】:574737577(备注ccc)icon-default.png?t=N4P3http://qm.qq.com/cgi-bin/qm/qr?_wv=1027&k=_IjHegeJ1FQnPeEKrMSmI4m8d-jOK2vN&authKey=QNcmDg0w07hxmEQGYswEgLBvrgH2VarqHkIDjZHQg2LOd4OtWxrw4pjErW9M5Gkc&noverify=0&group_code=574737577

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/28191.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

adb shell 调试 Android 串口 百度AI也很

在 Android 平台上进行串口调试需要使用 Android Debug Bridge (ADB) 工具。ADB 是一个命令行工具,可以通过 USB 连接 Android 设备,并执行各种命令来调试应用程序。 以下是使用 ADB shell 进行 Android 串口调试的步骤: 连接 Android 设备…

低代码开发平台介绍

低代码开发平台近两年发展迅猛,并迅速渗透到各个细分领域。本文简要介绍低代码开发的概念以及特性,并结合低代码开发的应用场景介绍两个低代码开发平台。 1、低代码开发概念 1.1 低代码开发介绍 低代码开发(Low-code Development&#xff0…

3D格式转换工具HOOPS Exchange​助力Zuken打造电子设计自动化产品

行业:电子制造 挑战:对制造商来说,电子设计变得越来越复杂 - 电气和机械设计的融合需要将二维和三维数据结合起来 - 需要提供对多种不同CAD格式的支持 解决方案:HOOPS Exchange是用于快速、准确的CAD数据转换的领先SDK&#xff…

vue Electron ArcGis 桌面应用 Sqllite3 node-grp:老旧项目的起死回生

最近接收了一个三四年前做的项目。主要技术栈就是vue2electronsqllite3node-gyp。看到这个技术栈,基本可以知道感知这个项目的关键词:vue、Gis地图、本地数据库、桌面客户端。顿时深感亚历山大。 不多说,开干。 第一步,查看项目…

商家必备!餐饮外卖回评话术

我认识过很多做餐饮外卖的商家,他们总是有相同苦恼的问题,尤其是回复食客们的评价,尤其是差评。小编在这里就为各位商家提供了一些餐饮外卖回评的话术,希望能给有需要的小伙伴们提供帮助哦~ 一、好评回复模板 1.叮~您的好评我们已…

什么是大数据,常见的大数据应用领域?

现在大数据发展的如火如荼,也有不少小伙伴对于什么是大数据比较感兴趣,那么大数据在比较官方的定义是指无法在一定时间范围内用常规软件工具进行捕捉、管理和处理的数据集合,是需要新处理模式才能具有更强的决策力、洞察发现力和流程优化能力…

Linux -- 用户和组

目录 一、root用户(超级管理员) 1.1 切换用户命令:su 和 exit 命令 1.2 sudo命令 二、用户、用户组 2.1 用户组管理 2.1.1 创建用户组 2.1.2 删除用户组 2.2 用户管理 2.2.1 创建用户 2.2.2 删除用户 2.2.3 查看用户所属组 2.2.…

ReentrantLock实现原理-条件锁

在前两篇文章中,我们了解了ReentrantLock内部公平锁和非公平锁的实现原理,可以知道其底层基于AQS,使用双向链表实现,同时在线程间通信方式(2)中我们了解到ReentrantLock也是支持条件锁的,接下来我们来看下,…

安卓期末考试知识总结(2)

文章目录 第四章:程序活动单元Activity四大组件Activity生命周期Activity的启动模式standardsingleTopsingleInstancesingleTask IntentIntentFilterActivity之间的数据传递putExtra()方法传递数据Bundle类传递数据Activity之间的数据回传 练习总结 第四章&#xff…

如何管理与改进低质供应商?帮助供应商提升自身质量能力?

管理和改进低质量的供应商可能是一项具有挑战性的任务,但与他们合作以提高他们的能力是可能的。可以采取一些步骤来管理和帮助提高供应商的质量: 确定根本原因:了解供应商产品或服务质量低下的原因。对他们的流程、资源和能力进行全面评估&am…

EFDC建模方法及在地表水环境评价、水源地划分、排污口论证应用

目录 专题一、软件安装 专题二、EFDC模型讲解 专题三、一维河流模拟实操 专题四、建模前处理 专题五、EFDC网格剖分介绍 专题六、EFDC二维湖库水动力模拟/非保守染色剂模拟 专题七、EFDC水质模型参数及原理介绍 专题八、EFDC一、二、三维湖库水质模拟 专题九、基于EFD…

window下安装docker并运行angular项目

window下安装docker并运行angular项目 1、使用场景 本地有一个node项目,node 版本是 v16.13.2,在本地安装的angular 是 15.2.4 但是测试服上面的node 版本是 14.19.3,angular 是1.0.0-beta.28.3 ,会导致angular项目的 ng build …

Submit的使用,程序中调用其他报表

Submit的使用 项目需求:编写一个程序能够将实时的物料库存数据通过发送邮件的形式发送到对应的邮件。现有标准的事务码MB5B来查看对应的库存数据。可以在程序中使用submit将参数传递到MB5B中,然后将获取的数据返回到程序中,然后在执行发送邮件…

线程的生命周期

我是一个线程 第一回 初生牛犊 我是一个线程,我一出生就被编了个号: 0x3704,然后被领到一个昏暗的屋子里,在这里我发现了很多和我一模一样的同伴。 我身边…

计算机视觉 | 语义分割与Segmentation

前 言 「MMSegmentation」 是一个基于 PyTorch 的语义分割开源工具箱。它是 OpenMMLab 项目的一部分。 MMSegmentation v1.x 在 0.x 版本的基础上有了显著的提升,提供了更加灵活和功能丰富的体验。 主要特性 统一的基准平台 我们将各种各样的语义分割算法集成到了…

文件系统原理

文件及硬盘管理是计算机操作系统的重要组成部分,让微软走上成功之路的正是微软最早推出的个人电脑PC操作系统,这个操作系统就叫DOS,即Disk Operating System,硬盘操作系统。我们每天使用电脑都离不开硬盘,硬盘既有大小…

谷歌的passkey是什么?

谷歌的passkey是什么? 谷歌正在研发一种名为“Passkey”的新技术,它将用于用户身份验证。Passkey不同于传统的密码,它采用了硬件加密密钥(如安全密钥或生物识别方式)以及双因素身份验证等技术,可以更好地保…

OpenCV项目开发实战--对图像种的对象进行无缝克隆-附Python、C++的代码实现

文末附基于Python和C++两种方式实现的测试代码下载链接 图 1:无缝克隆示例:一架飞机被克隆到傍晚天空的图片中。 OpenCV 3 中引入的令人兴奋的新功能之一称为无缝克隆。有了这个新功能,您可以从一个图像中复制一个对象,然后将其粘贴到另一个图像中,从而使构图看起来无缝…

做完瑞吉外卖项目的一点笔记和源码

源码在 https://gitee.com/pluto8/take-out 一、软件开发整体介绍 1、软件开发流程 需求分析 :产品原型,需求规格说明书(文档形式)设计:产品文档、UI界面设计、概要设计、详细设计、数据库设计编码:项目…

怎么在eclipse中创建python项目

目录 方法一:借助Eclipse Marketplace安装PyDev插件 方法二:到官网下载手动安装插件 参考文件 方法一:借助Eclipse Marketplace安装PyDev插件 这可以通过Eclipse Marketplace完成。打开Eclipse,然后选择“Help” > “Eclips…