Jmeter 01 -概述线程组

1、Jmeter:概述

1.1 是什么?

        Jmeter是Apache公司使用Java 开发的一款测试工具

1.2 为什么?

        高效、功能强大

        模拟一些高并发或多次循环等特殊场景

1.3 怎么用?

下载安装

  • 1、下载jmeter,解压缩
  • 2、安装Java环境(jmete 和 Java 环境的关系,类似于MP3文件和播放器关系)

        注意:安装路径不能有中文字符、空格

        安装JDK +JRE

点击下图的文件,代表文件安装成功

  • 3、简单了解Jmeter 的目录结构

                bin:存储了Jmeter的可执行程序,比如启动程序

                lib : 存储了Jmeter整合的功能(一些.jar文件的小程序)

  • 4、启动Jmeter

                启动方式1:bin/ApacheJMeter.jar双击

                启动方式2:存储了Jmeter整合的功能(一些.jar文件的小程序)

                                        jmeter.sh  linux下的启动程序

  • 5、编写一个Jmeter版本的测试案例

1.4 Jmeter 的作用优点以及缺点(了解)

作用:

  • 接口测试
  • 性能测试:内在  ---------- 测程序的算法,程序的效率响应时间
  • 压力测试:外在  ---------- 并发用户数,最多用户数导致程序崩溃,外在负载
  • Web自动化测试
  • 数据库测试:测试数据库,通过程序实现连接数据库
  • JAVA程序测试

优点

  • 开源、免费
  • 支持多协议:http https  ftp ftps ....
  • 小巧
  • 功能强大

缺点

  • 不支持IP欺骗 
  • 不支持前端测试

2、Jmeter组件:线程组

Jmeter:内置许多小功能()

2.1  是什么?

进程:一个正在执行的程序就对应一个线程,一个进程里面可以同时执行多个线程(比如百度网盘上传多张图片的同时也可以看网盘的内容,如视频)

  • 线程:进程中的执行线索(一个进程有多个执行线索)
  • 线程组:按照线程性质对线程进行分组,为了方便管理线程(如班级分组)
  • 并发执行:多个线程同时执行,如同时下载3部电影;特点:执行结束的顺序和线程启动的顺序不一定一致,如同时下载3部电影,先下载的不一定先下载完成,后下载的不一定后下载完成
  • 顺序执行:按照线程的启动顺序挨个执行,如播放音乐顺序播放

2.2 为什么?

方便管理

2.3 怎么用?(基本使用)

2.3.1  三者关系

 三者关系:进程有多个线程组,线程组可以有多个线程

  •         进程 ----  测试计划
  •         线程组 ---- 线程组
  •         线程 --- 线程组属性的线程数

例子:

组01有2个,组02有3个,一共返回5个

2.3.2 线程组的默认情况下

        默认情况下,线程组中的线程是并发执行的

        每一个线程组都要执行组内的http请求

2.3.3 怎么设置线程组顺序执行?

A、勾选测试计划的第一个复选框(独立运行每个线程组)

2.3.4 介绍取样器

线程组练习--增删改查

1、将上图的建立的线程先禁用

2、建立新线程

3、增加报文体数据和信息头

增加信息头,

记:Jmeter里万物皆组件

4、执行5、增加删除操作

2.4 练习:学生管理系统增删改查实现以及优化

        把共同属性(可复用并发)抽取出去,利用控件方式进行复用:可以使用http请求默认值抽取共同的ip端口号 |协议 | 编码集 | 等信息

        测试计划  -- >右击 --- >添加 ---> 配置文件  ---> http请求默认值

        作用:通过复用属性简化实现,提高测试效率

1、建立http请求默认值

HTTP请求字段内容为空,使用默认值

2.5 线程组高级(初始化与销毁线程组)

实现了些内置功能 

2.5.1 线程组属性

  • 属性1: 线程数 --- 模拟用户数
  • 属性2: 时间值 --- 在指定时间内启动所有线程
  • 属性3:循环数 --- 单个用户访问的次数

如下图:

不一定几秒就在几秒内,和本身的性能有关

2.5.2 调度器 * 循环测试

  • 循环次数设置为永远
  • 设置启动延迟x 和持续时间y

                在x秒后访问数据,并持续y秒

  • 设置启动时间M和结束时间N(在版本5.6.2版本不存在了)

                在M时开始访问,在N时结束

注意事项:2和3实现不能同时使用,否则矛盾了

        

图片:

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

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

相关文章

基于OpenCV灰度图像转GCode的螺旋扫描实现

基于OpenCV灰度图像转GCode的螺旋扫描实现 引言激光雕刻简介OpenCV简介实现步骤 1.导入必要的库2. 读取灰度图像3. 图像预处理4. 生成GCode5. 保存生成的GCode6. 灰度图像螺旋扫描代码示例 总结 系列文章 ⭐深入理解G0和G1指令:C中的实现与激光雕刻应用⭐基于二值…

5-3、S曲线生成器【51单片机+L298N步进电机系列教程】

↑↑↑点击上方【目录】,查看本系列全部文章 摘要:本节介绍步进电机S曲线生成器的计算以及使用 一.计算原理 根据上一节内容,已经计算了一条任意S曲线的函数。在步进电机S曲线加减速的控制中,需要的S曲线如图1所示,横…

React 实现表单组件

表单是html的基础元素,接下来我会用React实现一个表单组件。支持包括输入状态管理,表单验证,错误信息展示,表单提交,动态表单元素等功能。 数据状态 表单元素的输入状态管理,可以基于react state 实现。 …

09_树莓派_树莓派外设板_GPIO_按键的中断与消抖

目录 1.树莓派外设集成板总体介绍 2.第一部分 按键矩阵 GPIO_按键与中断 3.实现效果 1.树莓派外设集成板总体介绍 1)前言:这是一块为了验证树莓派【兼容树莓派多个型号】的40pins的外设接口的外接板,告别复杂的面包板外设搭建。【欢迎各位…

【Iceberg学习四】Evolution和Maintenance在Iceberg的实现

Evolution Iceberg 支持就底表演化。您可以像 SQL 一样演化表结构——即使是嵌套结构——或者当数据量变化时改变分区布局。Iceberg 不需要像重写表数据或迁移到新表这样耗费资源的操作。 例如,Hive 表的分区布局无法更改,因此从每日分区布局变更到每小…

Node.js+Express+Mysql服务添加环境变量

1、使用dotenv插件 1)安装插件:npm install dotenv-cli --save-dev 2)在项目根目录下添加对应的 .env 配置文件; // .env配置文件内容 MODEdevelopment, BASE_URLhttp://127.0.0.1:80813) 在启动命令中设置对应的加载文件&#…

RabbitMQ-1.介绍与安装

介绍与安装 1.RabbitMQ1.0.技术选型1.1.安装1.2.收发消息1.2.1.交换机1.2.2.队列1.2.3.绑定关系1.2.4.发送消息 1.2.数据隔离1.2.1.用户管理1.2.3.virtual host 1.RabbitMQ 1.0.技术选型 消息Broker,目前常见的实现方案就是消息队列(MessageQueue&…

新零售的升维体验,摸索华为云GaussDB如何实现数据赋能

新零售商业模式 商业模式通常是由客户价值、企业资源和能力、盈利方式三个方面构成。其最主要的用途是为实现客户价值最大化。 商业模式通过把能使企业运行的内外各要素整合起来,从而形成一个完整的、高效率的、具有独特核心竞争力的运行系统,并通过最…

springboot与Elasticsearch版本兼容对比

首先 大家在下载 Elasticsearch 时 最好先弄清楚版本 因为 如果 Spring Boot 版本 不兼容 Elasticsearch 那就是到头一场空了 Elasticsearch 版本 6.x 可以兼容 Spring Boot 2.x Elasticsearch 版本 7.x 可以兼容 Spring Boot 2.x 3.x 4x Elasticsearch 版本 7.x 以及 8.x 可以…

Golang-Map有序输出——使用orderedmap库实现

前言 工作中遇到一个问题:需要导出一个MySQL表格,表格内容由sql查询得来。但现在发现,所导出的表格中,各列的顺序不确定。多次导出, 每一次的序列顺序也是不定的。 因此确定是后端,Map使用相关导致的问题。…

分布式文件存储系统minio

参考Linux搭建免费开源对象存储 wget https://dl.minio.io/server/minio/release/linux-amd64/minio yum install -y wget yum install -y wget wget https://dl.minio.io/server/minio/release/linux-amd64/minio chmod x minio sudo mv minio /usr/local/bin/ minio --vers…

黑马头条 Kafka

我是南城余!阿里云开发者平台专家博士证书获得者! 欢迎关注我的博客!一同成长! 一名从事运维开发的worker,记录分享学习。 专注于AI,运维开发,windows Linux 系统领域的分享! 知…

玩家笔记:幻兽帕鲁搭建服务器开服教程

玩转幻兽帕鲁服务器,阿里云推出新手0基础一键部署幻兽帕鲁服务器教程,傻瓜式一键部署,3分钟即可成功创建一台Palworld专属服务器,成本仅需26元,阿里云服务器网aliyunfuwuqi.com分享2024年新版基于阿里云搭建幻兽帕鲁服…

1.0 Zookeeper 分布式配置服务教程

ZooKeeper 是 Apache 软件基金会的一个软件项目,它为大型分布式计算提供开源的分布式配置服务、同步服务和命名注册。 ZooKeeper 的架构通过冗余服务实现高可用性。 Zookeeper 的设计目标是将那些复杂且容易出错的分布式一致性服务封装起来,构成一个高…

实践:微服务版本升级步骤以及maven仓库相关概念

进行微服务开发的时候&#xff0c;上层服务依赖于下层的服务的api&#xff0c;比如适配属于上层服务&#xff0c;用户属于下层服务。 例子: 上层服务 <!--订单管理微服务api依赖--> <dependency><groupId>com.jn.server</groupId><artifactId>…

docker部署docker运维工具

简介 主要功能:管理容器,管理镜像,管理容器网络 安装 拉取镜像 docker pull joinsunsoft/docker.ui:1.0.1 启动容器 docker run -d --name docker.ui --restart always -v /var/run/docker.sock:/var/run/docker.sock -p 10039:8999 joinsunsoft/docker.ui:1.0.1 使用 打…

【ArcGIS微课1000例】0101:删除冗余节点或折点

文章目录 一、实验描述二、实验数据三、实验过程1. 手动删除2. 简化线工具四、注意事项一、实验描述 矢量数据获取通常来源于手动或者ArcScan自动采集,其基本存储方式就是记录每个要素的点坐标,如点要素就是一个坐标、线要素由多个点要素连接形成。当某段线要素被过多的节点…

多模态对比语言图像预训练CLIP:打破语言与视觉的界限,具备零样本能力

多模态对比语言图像预训练CLIP:打破语言与视觉的界限,具备零样本能力。 一种基于多模态(图像、文本)对比训练的神经网络。它可以在给定图像的情况下,使用自然语言来预测最相关的文本片段,而无需为特定任务进行优化。CLIP的设计类似于GPT-2和GPT-3,具备出色的零射击能力…

C++中的构造函数

一、类中的6个默认成员函数 如果一个类中什么都没有&#xff0c;那么这个类就是一个空类。但空类中并不是真的什么都没有&#xff0c;编译器会自动生成6个默认成员函数 分别是构造函数、析构函数、拷贝构造函数、赋值重载函数、普通对象取地址函数、const对象取地址函数 本篇…

全链游戏的未来趋势与Bridge Champ的创新之路

为了充分探索全链游戏的特点和趋势&#xff0c;以及Bridge Champ如何作为一个创新案例融入这一发展脉络&#xff0c;我们需要深入了解这两者之间的互动和相互影响。全链游戏&#xff0c;或完全基于区块链的游戏&#xff0c;代表了游戏行业的一个重要转型&#xff0c;它们利用区…