JMeter之__threadNum妙用:将接口查询结果列表按顺序赋值给各线程

news2025/1/10 23:33:42

使用JMeter做性能测试会遇到这么一个场景:后面的请求需要根据前面的查询列表结果通过正则表达式提取器取值后赋值,而后面用户的赋值必须是唯一的,此时该如何做?

如果按编程思维来说,这个问题并不难。只需要把前面的结果保存到一个数组变量中,后面的用户(即线程组中的单个线程)逐一从该数组变量中取值即可。

小酋开始的思路也是如此,但最后发现要实现这个功能,非常复杂。如果大家不信,可以试试看,如果有简单的实现方式,可以留言告诉小酋。

最后,小酋最后通过__threadNum该函数很容易解决了上述的问题。

下面谈谈具体的思路

1、假如我们前一请求的查询列表结果如下

如果你想学习jmeter性能测试,我这边给你推荐一套视频,这个视频可以说是B站播放全网第一的jmeter接口测试教程,同时在线人数到达1000人,并且还有笔记可以领取及各路大神技术交流:798478386

15天学会性能测试,通俗易懂详细教学,Jmeter性能测试实战(集群压测,全链路压测,性能调优,瓶颈分析)极速掌握,干就完事!_哔哩哔哩_bilibili15天学会性能测试,通俗易懂详细教学,Jmeter性能测试实战(集群压测,全链路压测,性能调优,瓶颈分析)极速掌握,干就完事!共计27条视频,包括:1.【性能测试】什么是性能测试以及性能测试的价值和目的、2.【性能测试】真实企业性能测试指标详解以及指标测算、3.【性能测试】真实企业中性能测试流程以及细节剖析等,UP主更多精彩视频,请关注UP账号。https://www.bilibili.com/video/BV1B14y1D7X9/?spm_id_from=333.337.search-card.all.click

2、此时要用3个用户(线程)执行测试,迭代一轮

3、我们在JMeter中新建一【http请求】,实现请求查询列表

4、通过正则表达式提取器对查询结果取值(该提取器的具体用法参见文章《JMeter正则表达式提取器实践》)

5、新建一【JAVA请求】,名字直接为 ${ID} (即上面取值的变量)方便我们后续查看结果。

6、最后添加一监听器【查询结果树】,运行后(如下)我们看到三个用户(线程)的取值一样。

这里可能大家第一时间想到的是对前面查询列表结果的取值做处理,但前面提到小酋尝试过要实现很复杂。仔细看上面截图中线程组的每个线程都有编号(如 线程组 1-3),那我们是不是可以在这上面想办法?

7、在正则表达式提取器中,使用${__threadNum}作为匹配数字的值。

8、最后我们再来运行下,看看取值结果(如下),即完美解决了将接口查询结果列表按顺序赋值给各用户,保证各用户赋值唯一的问题。

思考几个问题:

  • 现实中我们的查询列表请求还会带上page(页数),PageSize(分页条数),此时我们的用户(线程)要保证取值唯一,PageSize与线程数该如何赋值?
  • 如果我们要保证每轮每个用户(线程)取值都是唯一的,page该如何利用起来?
  • 性能测试场景中,碰到查询列表结果数据不够,该如何处理? 

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Azkaban搭建与使用

下载最新azkaban源文件:https://github.com/azkaban/azkaban/releases 集群模式安装 1.解压 azkaban-db-3.84.4.tar.gz、 azkaban-exec-server-3.84.4.tar.gz 和 azkaban-web-server-3.84.4.tar.gz 到/opt/install/azkaban 目录下 linux>tar -zxvf azkaban-db-3…

算法:静态查找表

查找表(Search table)是由同一类型的数据元素(或记录)构成的集合。关键字(key)是数据元素中某个数据项的值,又称为键值,用它可以表示一个数据元素,也可以标识一个记录的数据项(字段&…

当深度学习撞上高性能计算,科研仿佛坐上了加速器

今天深度学习无处不在,当你打开移动终端的时候,各种APP会推荐到你喜欢的食物、你喜欢的电影,你关注的新闻热点。在生活中更是改变着我们,今天的智能语音让语言障碍破除,在预测疾病基因大数据领域预测疾病来确定药物治疗…

2023年大学生就业怎么样?双一流高校就业率仅15%,到底是咋了?

2023年,大学毕业生就业状况如何,一直是社会关注的焦点。尤其是中国的双一流高校,以其优越的教学与研究背景和实力,被众多年轻人视为就业的理想选择。 然而,在最新的统计数据中,这些一流高校的就业率却惊人…

欧科云链OKLink全新推出Onchain AML服务 助力新金融合规健康发展

据香港大公报报道,为期两天的全球高端经济峰会2023格林威治经济论坛(GreenwichEconomicForum,下称GEF论坛)于6月15日在香港交易所举办,欧科云链控股有限公司(下称“欧科云链”,股票代码:01499.HK&#xff0…

【北邮国院大三下】Logistics and Supply Chain Management 物流与供应链管理 Week4

北邮国院大三电商在读,随课程进行整理知识点。仅整理PPT中相对重要的知识点,内容驳杂并不做期末突击复习用。个人认为相对不重要的细小的知识点不列在其中。如有错误请指出。转载请注明出处,祝您学习愉快。 如需要pdf格式的文件请私信联系或…

VALSE 2023 无锡线下参会个人总结 6月12日-3

VALSE2023 无锡线下参会个人总结 6月12日-3 6月12日会议日程安排Workshop:多模态大模型与提示学习左旺孟:预训练模型和语言增强的零样本视觉学习余宙:知识增强的多模态预训练和提示学习王云鹤:多模态交织:高效模型架构…

STM32中断设置以及中断优先级设置-不含代码例程

本项目使用到的是STM32F030C8型号的MCU,我们可以从官方下载到的标准库文件中的启动汇编文件中,查看到本型号单片机的外部中断向量表。(如下图所示) 首先,我们了解一下NVIC是什么,在core_cm0.h文件中的标准库…

海川润泽“巧克力”DTU强势来袭

1、设备介绍 “巧克力”DTU(型号:HCRZ-DTU200),它可以实现远程通信、安全传输等功能,提高了传输的效率和可靠性。采用全新工业级设计,灵活应用于不同场景。此款DTU体积小(76mm31mm21.8mm)、重量轻(150g),安装简便&…

「任务派发」上线,高效管理跨平台营销任务

作为企业矩阵号相关业务的负责人,您在工作中是否遇到: 下达一个营销任务,需要在几十上百个群里沟通对接?任务发布后,无法掌握各运营者执行情况?账号数据难回收,无法检验任务完成效果&#xff1…

阿里云携手开放原子开源基金会倡议发起云原生工作委员会,两大开源项目达成捐赠意向

6月11日,2023开放原子全球开源峰会正式拉开帷幕。本届峰会以“开源赋能,普惠未来”为主题,设置了开幕式暨高峰论坛、20余场分论坛和开源成果及重点项目展览。在峰会主论坛,开放原子开源基金会理事长孙文龙协各家单位共同倡议发起云…

抖音加码自营电商,拿什么做出差异化?

今年618期间,抖音电商可谓是花尽了心思。不仅推出了补贴活动,上架了单品超值购、商城频道主题日、搜索彩蛋等玩法,而且在售后方面,还推出了“安心购”服务,可提供“七天无理由退货”“极速退款”“运费险”“过敏包退”…

关于QTreeView使用自定义Tree Model时,插入子项目时,扩展箭头不显示的问题

在使用自定义的TreeModel显示数据时,添加子项目后,扩展箭头不显示,但是点击原来扩展箭头在的地方时,树仍能够展开添加的子项目。 经过研究发现,QTreeView有以下代码: 说明如果调用的beginInserRows中的par…

Apikit 自学日记: 如何创建/生成 API 文档

在 API 研发管理产品中,几乎所有的协作工作都是围绕着 API 文档进行的。 我们在接触了大量的客户后发现,采用 文档驱动 的协作模式会比先开发、后维护文档的方式更好,团队协作效率和产品质量都能得到提高。因此我们建议您尝试基于文档来进行工…

vite预渲染 vite-plugin-prerender 大坑记录

本文部分配置转自:vite预渲染怎么实现_猿耳盗铃的博客-CSDN博客 懒得重新写,贴下版本和自己踩的各种坑吧 以下为版本,本文只给vite vue3的建议,不一定适用,因为正常情况能build成功,我昨天中午之前一直没…

JUC高级-0614

5.LockSupport与线程中断 5.1 线程中断 蚂蚁金服面试题:如何中等一个线程,如何停止一个线程什么是中断机制 首先:一个线程不应该由其他线程来强制中断或停止,而是应该由线程自己自行停止。所以,Thread.stop, Thread.…

不用编程超简单的自动化测试工具:Airtest入门篇教程

目录 一、背景 二、什么是Airtest 三、Airtest下载安装 四、Airtest入门使用教程 4.1 连接设备: 4.2 具体测试场景案例: 五、总结 一、背景 很多刚入行或从其他行业转行做测试的同学,日复一日每天做点工已经点得疲惫和麻木&#xff…

数仓架构“瘦身”,Hologres 5000CU时免费试用

Hologres基于创新的HSAP架构,可以将您原先数仓架构中的OLAP系统(Greenplum、Presto、Impala、ClickHouse)、KV数据库/Serving系统(HBase、Redis)统一在一个大数据计算引擎中,并提供快速的离线实时一体化分析…

企业如何搭建公司的宿舍管理系统?让数字化改变新的管理方式

什么是企业宿舍管理系统 企业宿舍管理系统是一种用于管理企业宿舍的软件。它可以帮助企业更好地管理公司的宿舍,包括员工选房、入住登记、租金管理、公共设施预订等。该系统通常使用计算机和互联网技术,以便更高效地处理和记录与宿舍相关的活动和任务。…

【Nginx】Ubuntu23.04 安装Nginx

Ubuntu23.04 安装Nginx 1.官方文档2.命令补充 1.官方文档 ❤️ 根据Nginx官方文档在Ubuntu23.04版本上安装Nginx,直接跟随步骤复制命令即可。 → Nginx官方Ubunt安装文档 如图: 这里复制了一份,并翻译了: 安装必备组件&#xff1…