jmeter常用配置元件介绍总结之线程组

系列文章目录
安装jmeter

jmeter常用配置元件介绍总结之线程组

    • 1.线程组(用户)
      • 1.1线程组
      • 1.1.setUp线程组和tearDown线程组
      • 1.2.Open Model Thread Group(开放模型线程组)
      • 1.3.bzm - Arrivals Thread Group(到达线程组)
      • 1.4.jp@gc - Ultimate Thread Group(终极线程组)
      • 1.5.jp@gc - Stepping Thread Group(递进线程组)
      • 1.6.bzm -Free-Form Arrivals Thread Group(自由到达线程组)

1.线程组(用户)

1.1线程组

功能:是最基础最常用的线程组
参数讲解

  1. 在取样器错误后要执行的动作:设置请求遇到错误时,如何处理,是继续还是启动下一进程循环、停止线程、停止测试等
  2. 线程数:用于模拟用户的数量,如设置20,则表示20个虚拟用户
  3. Ramp-Up时间(秒):用多少时间来启动线程,如:20个线程,时间设置为10,则表示20/10=2,每秒启动2个线程,用10s时间启动完成20个线程
  4. 循环次数:勾选永远时会一直执行,不勾选输入数值时则循环指定次。如:20个线程,循环20次,则一共会产生20*20=400个请求
  5. 调度器–持续时间(秒):循环次数必须勾选永远才能使用,可以理解成不按次数,而是按时间来设置运行多久,如:设置为300,则线程会持续运行5分钟,5分钟后自动停止
  6. 调度器–启动延迟(秒):循环次数必须勾选永远才能使用,设置后点击运行后不会立即运行,要等待指定的时间后才会开始运行,如:设置为60,则点击运行按钮后,等待60s才开始运行

注意:调度器必须要把循环次数设置为永远才会生效

在这里插入图片描述
在这里插入图片描述

1.1.setUp线程组和tearDown线程组

功能:执行前置操作和执行后置操作
如图,页面的参数配置和普通线程组基本一直,唯一的区别是执行的优先级不同,setUp线程组永远是最新被执行的线程组,tearDown线程组则是所以线程执行完后最后执行的
应用场景:如登录系统时,没有账号,则我们可以用setUp线程组去批量注册账号,然后普通线程组使用注册的账号来执行具体的业务操作,最后则用tearDown线程来批量退出账号登录
即:前置任务 – 任务 – 后置收尾任务

在这里插入图片描述

1.2.Open Model Thread Group(开放模型线程组)

功能:以时间的方式,自定义测试模型、业务场景
可以配置调度计划,根据计划进行压测
rate(1/min):设置每分钟流量
random arrivals(10 min):设置持续时间
pause(1 min):设置暂停时间
/*comment*/:注释

可设置单位sec、min、hour、day,如:

rate(1/sec)
random arrivals(10 sec)
pause(1 sec)

如图演示设置的:

#每秒50tps,持续运行10s,然后暂停10s,启动下一阶段测试,每秒100tps,持续20s
rate(50/sec) random_arrivals(10 sec) pause(10 sec) 
rate(100/sec) random_arrivals(20 sec)

在这里插入图片描述
在这里插入图片描述

提示:以下的线程需要安装插件才能使用
在插件管理钟中搜索jpgc-casutg,然后下载在这里插入图片描述

1.3.bzm - Arrivals Thread Group(到达线程组)

可用阶梯式的方式控制线程达到目标tps后,持续压测
参数说明:
Target Rate (arrivals/sec):设置目标tps
Ramp Up Time (sec):多长时间内达到目标tps
Ramp-Up Steps Count:启动时分多个阶梯达到目标tps
Hold Target Rate Time (sec):达到目标tps后,持续运行多长时间
Time Unit:设置时间单位,minutes/seconds,分/秒

Thread lterations Limit:线程迭代的次数限制
Log Threads Status into File:将线程状态记录到文件中
Concurrency Limit:限制最大并发限制

如图:用两个阶梯,在10秒内,达到120tps,持续运行10秒钟

在这里插入图片描述

1.4.jp@gc - Ultimate Thread Group(终极线程组)

功能:可灵活的配置构建多种测试模型、场景,适合模拟有时间规律的场景
参数说明
Start Threads Count:设置该行的启动线程总数
Initial Delay:设置该行的线程启动等待时间
Startup Time:设置该行,用多长时间来启动线程总数,如:线程总数(Start Threads)设置100,启动时间(Startup Time)设置10s,则表示用10s启动100个线程
Hold Load For:设置该行,线程数全部启动后,持续运行的时间
Shutdown Time:设置改行,用多长时间来结束线程

在这里插入图片描述

1.5.jp@gc - Stepping Thread Group(递进线程组)

功能:阶梯性,递增式的不断增加并发数
参数说明
This group will start:设置需要启动的总线程数
First, wait for:设置第一次启动线程时的延迟时间
Then start:设置开始递增前的用户数,先提前准备线程数,后面递增时是在这个值上递增的,类似于设置一个初始值,如:设置100,后面每次递增10,就是100–110–120…

Next, add:每次增加多少个用户数
using ramp-up:设置用多长时间来启动这些线程,这个时间是同时对Then start、Next, add作用的
如:Then start=100; Next, add=10;using ramp-up=5
则表示,用5秒时间启动100个线程后,每隔5秒又增加10个线程,直到达到设置的总线程数

Then hold load for:所有线程全部加载完后,持续运行的时间,如:总线程是500,则表示,达到500这个最高的峰值后,继续持续执行的时间

Finally, stop:每次停止的用户数
threads every:多长时间停止一次线程数
如:Finally, stop=10;threads every=5;
则表示,每5秒停止10个线程,直到所有的线程全部停止

在这里插入图片描述

1.6.bzm -Free-Form Arrivals Thread Group(自由到达线程组)

参数说明
Start Value:设置开始的线程数
End Value:设置结束时的用户数
Duration:设置从开始到结束线程数启动时间

Time Unit:设置时间单位,minutes/seconds,分/秒
Thread lterations Limit:线程迭代的次数限制
Log Threads Status into File:将线程状态记录到文件中
Concurrency Limit:限制最大并发限制
如:Start=100;End=200;Duration=60,
则表示,将线程数加载到100后,再用60s的时间逐渐将并发增加到200

在这里插入图片描述

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

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

相关文章

spring gateway 动态路由

##yml配置 spring:application:name: public-gateway # cloud: # gateway: # routes: # - id: mybatis-plus-test # 路由的唯一标识 # uri: http://192.168.3.188:9898 # 目标服务的地址 # predicates: # - Path/test/** # 匹配…

NVT新能德科技入职测评SHL题库更新:数字推理+演绎推理高分答案、真题解析

新能德的入职Verify测评主要考察应聘者的逻辑推理能力、数学能力、数据分析能力以及处理信息的能力。根据搜索结果,测评通常包含以下几个部分: 1. **语言理解**:这部分包括阅读理解、逻辑填空和语句排序。要求应聘者在17分钟内完成30题&#…

学法减分交管12123模拟练习小程序源码前端和后端和搭建教程

交管推出个学法减分,每个驾驶员可以把被扣的6分,以看视频答题的形式学习回来,然后答题这个一共二十道题每道题60秒,有好多人不会,用咱们的小程序就可以模拟练习强化练习,还有拍照识别题目找到正确答案&…

element-plus <el-date-picker>日期选择器踩坑!!!!

我怎么一上午踩两个坑&#xff01;&#xff01;&#xff01;&#xff01;&#xff01;&#xff08;大声bb&#xff09; 原来的vue2老项目是这样写的 <el-form-item label"时间" prop"time"><el-date-pickerv-model"addForm.time"typ…

JS的学习与使用

JS的学习与使用 一 什么是Javascript&#xff1f; Javascript是一门跨平台&#xff0c;面向对象的脚本语言&#xff0c;是用来控制网页行为的&#xff0c;它能使网页可以交互 java与Javascript是完全不同的语言&#xff0c;不论是概念还是设计&#xff0c;但是基础语法类似 E…

ubuntu20.04 解决Pytorch默认安装CPU版本的问题

ubuntu20.04 解决Pytorch默认安装CPU版本的问题 在使用Anaconda安装支持CUDA的PyTorch版本时&#xff0c;遇到只能安装CPU版本的PyTorch是一个常见问题。这通常由于Anaconda环境配置、镜像源设置不当或版本匹配问题导致。以下是详尽的解决方案和步骤&#xff0c;以确保能够正确…

【操作系统】守护进程

一、守护进程的概念 守护进程是一个在后台运行并且不受任何终端控制的进程 二、自己实现守护进程 1.预备知识 &#xff08;1&#xff09;/dev/null /dev/null是一个特殊的设备文件&#xff0c;往这个文件里写不进去任何数据&#xff0c;也读不出来任何数据 因此&#xff0…

【数据结构与算法】第12课—数据结构之归并排序

文章目录 1. 归并排序2. 计数排序3. 排序算法复杂度及稳定性分析在这里插入图片描述 1. 归并排序 分治法&#xff08;Divide and Conquer&#xff09;是一种重要的算法设计策略&#xff0c;其核心思想是将一个复杂的大问题分解为若干个小规模的子问题&#xff0c;递归地解决这些…

【安全通信】告别信息泄露:搭建你的开源视频聊天系统briefing

文章目录 前言1.关于briefing2.本地部署briefing3.使用briefing4.cpolar内网穿透工具安装5.创建远程连接公网地址6.固定briefing公网地址 前言 在这个信息爆炸的时代&#xff0c;视频聊天几乎成了我们日常沟通的标配。但你是否曾在视频会议中感到不安&#xff0c;担心自己的私…

pip install tkinter报错

pip install tkinter&#xff1a;ERROR: Could not find a version that satisfies the requirement tkinter 这是因为&#xff0c;安装python的时候没有安装tkinter选项&#xff0c;解决这个问题有下面两种方法 一、重新安装python 但是这个步骤有点麻烦 二、在python-3.1…

Python的面向对象day7

1、什么是面向对象 面向对象称为OO&#xff0c;他通过将数据和功能封装在一个被称为‘对象’的实体中&#xff0c;来组织和管理代码。面向对象变成&#xff08;OOP&#xff09;具有四个特性&#xff0c;封装、继承、多态、抽象 优点&#xff1a;模块化、安全性高、代码重用性…

自动化工具 Gulp

自动化工具 gulp 摘要 概念&#xff1a;gulp用于自动化开发流程。 理解&#xff1a;我们只需要编写任务&#xff0c;然后gulp帮我们执行 核心概念&#xff1a; 任务&#xff1a;通过定义不同的任务来组织你的构建流程。 管道&#xff1a;通过管道方式将文件从一个插件传递…

探索 Seata 分布式事务

Seata(Simple Extensible Autonomous Transaction Architecture)是阿里巴巴开源的一款分布式事务解决方案,旨在帮助开发者解决微服务架构下的分布式事务问题。它提供了高效且易于使用的分布式事务管理能力,支持多种事务模式,确保数据的一致性和完整性。 以下是 Seata 的一…

【QT常用技术讲解】优化网络链接不上导致qt、qml界面卡顿的问题

前言 qt、qml项目经常会涉及访问MySQL数据库、网络服务器&#xff0c;并且界面打开时的初始化过程就会涉及到链接Mysql、网络服务器获取数据&#xff0c;如果网络不通&#xff0c;卡个几十秒&#xff0c;会让用户觉得非常的不爽&#xff0c;本文从技术调研的角度讲解解决此类问…

编程之路,从0开始:知识补充篇

Hello大家好&#xff0c;很高兴我们又见面了&#xff01; 给生活添点passion&#xff0c;开始今天的编程之路&#xff01; 这一篇我们来补充一下在之前篇目没讲到的知识&#xff0c;并结合一些码友的私信提问和我在编程中遇到的问题&#xff0c;做一些易错点或易混点的讲解。 …

C语言中,让人又爱又恨的字符串编码

引言 在C语言的世界里&#xff0c;字符串编码是一个让人既爱又恨的话题。 所有的打印信息&#xff0c;都是以字符串输出的。但是&#xff0c;大家在编码的时候&#xff0c;经常会遇到一些情况&#xff0c;稍不注意&#xff0c;就会导致显示出乱码&#xff0c;到了客户那里&…

nginx openresty lua-resty-http 使用的一些问题记录

需求背景 需求是使用 nginx 做一个 https 服务的代理 nginx 收到 http 请求后&#xff0c;需要修改 body 中的某些参数值&#xff0c;然后将修改后的数据发送到目标服务器&#xff08;https&#xff09; 本来以为很简单的需求&#xff0c;结果中间出现了不少岔子&#xff0c;这…

vue2+ element ui 集成pdfjs-dist

目录 1. 下载Pdf.js1.1 下载1.2 修改配置1.2.1 将pdfjs-3.8.162-dist复制到项目中1.2.2 解决跨域问题1.2.3 将pdf.worker.js文件复制到public目录下1.2.4 安装 pdfjs-dist1.2.5 前端vue代码(示例) 3. 参考资料 1. 下载Pdf.js 1.1 下载 下载链接&#xff08;官方&#xff09;需…

「Mac玩转仓颉内测版2」入门篇2 - 编写第一个Cangjie程序

本篇详细介绍在Mac系统上创建首个Cangjie项目并编写、运行第一个Cangjie程序的全过程。内容涵盖项目创建、代码编写、程序运行与调试&#xff0c;以及代码修改后的重新运行。通过本篇&#xff0c;掌握Cangjie项目的基本操作&#xff0c;进一步巩固开发环境的配置&#xff0c;迈…

接单渠道,程序员看这篇就够了。

接单、兼职&#xff0c;有团队没单子&#xff1f;僧多粥少&#xff0c;苦矣。 很多程序员&#xff0c;有时间、有技术&#xff0c;有steam&#xff08;咳咳&#xff0c;不对&#xff0c;是team&#xff09;。但是&#xff0c;可能还是挣不到什么钱&#xff0c;何也&#xff1f…