Jmeter的安装与快速使用(做并发测试)

news2024/9/23 7:32:05

1、了解

JMeter是一款开源的性能测试工具,它主要用于模拟多种负载条件下的应用程序或服务器的性能和功能。JMeter可以发送不同类型的请求,如HTTP、HTTPS、FTP、SOAP、REST等,并且可以模拟多种负载类型,例如并发用户、线程组、定时器等。

JMeter具有以下主要特点:

  • 可以对各种应用程序和协议进行测试,包括Web应用程序、数据库、文件服务器等。
  • 支持分布式测试,可以在多台机器上同时执行测试以模拟高负载条件。
  • 提供丰富的图形化界面,方便用户创建和编辑测试计划。
  • 可以生成测试报告和图形化图表,以便分析和评估应用程序的性能。

使用JMeter,你可以进行性能测试、负载测试、压力测试和功能测试,以确保你的应用程序或服务器能够在各种条件下正常工作并具有良好的性能。

除了基本的测试操作之外,JMeter还提供了许多高级功能和扩展,以满足更复杂的测试需求。以下是一些JMeter的高级功能和扩展:

  1. 分布式测试:JMeter支持将负载测试分布在多台计算机上,以模拟高负载情况。您可以使用JMeter Server和JMeter Client来配置和运行分布式测试。

  2. 集成CI / CD流程:JMeter可以与Jenkins等CI / CD工具集成,以自动化负载测试和性能监测,以确保应用程序在不同环境和平台上的稳定性和可扩展性。

  3. 数据库测试:JMeter提供了丰富的数据库测试功能,您可以轻松地模拟并测试数据库连接、查询、更新、事务等。

  4. 安全测试:JMeter支持测试Web应用程序和Web服务的安全性能。它可以发送不同类型的攻击,例如SQL注入、跨站点脚本(XSS)等。

  5. 脚本自动生成:JMeter提供了多种脚本自动生成插件,例如JMeter Recorder和Badboy,可以根据用户实际操作自动生成测试脚本。

  6. 自定义插件:JMeter提供了丰富的可扩展性,您可以使用Java编写自定义插件,例如自定义断言器、 JMX监视器等。

  7. JMeter插件:JMeter插件是针对JMeter的开源扩展,提供了丰富的功能和图形化界面,例如动态负载测试、图表和报告增强、高级调试等。

请注意,这些功能和扩展不是JMeter的全部功能,而是一些可用的选项。使用JMeter需要根据项目需求选择适当的功能和插件。同时,需要注意负载测试可能对目标应用程序或服务器造成较大压力,因此需要谨慎管理和执行测试。

2、下载

下载网址:https://jmeter.apache.org/download_jmeter.cgi

3、安装

3.1、默认你已经安装了JDK环境

3.2、配置系统环境

3.2.1、此电脑右击然后点击属性

3.2.2 点击高级系统设置

3.2.3、点击环境变量

3.2.4、添加系统变量

3.2.5、添加path变量

4、使用

当使用JMeter进行性能测试时,您可以按照以下步骤进行操作:

打开Jmeter:

创建测试计划:打开JMeter并创建一个新的测试计划。测试计划是测试的顶层容器,你可以在其中添加线程组、请求和其他组件。(可以不用创建打开就是一个Test Plan)

添加线程组:线程组定义了测试中的用户行为和负载条件。您可以设置并发用户数、循环次数、Ramp-Up时间等。

添加完线程后就编辑线程组参数

添加请求:JMeter支持多种类型的请求,如HTTP、FTP、SOAP、REST等。根据您的测试需求,选择合适的请求类型,并配置请求参数。

配置请求参数:根据请求类型,您可能需要提供请求的URL、请求方法、请求头、请求体等相关参数。确保正确配置请求参数以模拟真实的用户行为。

添加断言:断言用于验证请求的响应是否符合预期。您可以添加断言来检查响应代码、响应时间、响应内容等。

添加结构数与综合图方便查看结果

注意:综合报告的参数意思:

Label----每个请求的名称,比如HTTP请求等

#Samples----发给服务器的请求数量

Average----单个请求的平均响应时间
Median----50%请求的响应时间

90%Line----90%请求响应时间

95%Line----95%请求响应时间

99%Line----99%请求的响应时间

Min----最小的响应时间

Max----最大的响应时间

Error%----错误率=错误的请求的数量/请求的总数

Throughput----吞吐量即表示每秒完成的请求数

Received KB/sec----每秒从服务器端接收到的数据量

Sent KB/sec----每秒从客户端发送的请求的数量

运行测试:保存测试计划并点击运行按钮,JMeter将开始模拟用户行为并发送请求。您可以监视运行时的结果和性能指标。

先酱紫有时间写

分析测试结果:当测试完成后,您可以查看并分析测试结果报告。JMeter提供了丰富的图表和数据表格,用于评估应用程序的性能和稳定性。

先酱紫有时间写

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

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

相关文章

洛谷普及组P1044栈,题目讲解(无数论基础,纯打表找规律)

[NOIP2003 普及组] 栈 - 洛谷 我先写了个打表的代码&#xff0c;写了一个小时&#xff0c;o(╥﹏╥)o只能说我真不擅长dfs。 int n; std::unordered_map<std::string, int>map; void dfs(std::vector<int>&a, int step,std::stack<int>p, std::string …

【K8S 资源管理】声明式资源管理

目录 一、常用的发布方式 1、蓝绿发布&#xff1a; 2、金丝雀发布&#xff08;灰度发布&#xff09;&#xff1a; 3、滚动更新&#xff08;deployment的默认更新方式&#xff09;&#xff1a; 二、声明式管理方法&#xff08;yaml文件&#xff09; 1、三种发布命令&#x…

C语言中灵活多变的动态内存,malloc函数 free函数 calloc函数 realloc函数

文章目录 &#x1f680;前言&#x1f680;管理动态内存的函数✈️malloc函数✈️free函数✈️calloc函数✈️realloc函数 &#x1f680;在使用动态内存函数时的常见错误✈️对NULL指针的解引用✈️ 对动态开辟空间的越界访问✈️对非动态开辟内存使用free释放✈️使用free释放一…

三、C语言中的分支与循环—for循环 (6)

本章分支结构的学习内容如下&#xff1a; 三、C语言中的分支与循环—if语句 (1) 三、C语言中的分支与循环—关系操作符 (2) 三、C语言中的分支与循环—条件操作符 与逻辑操作符(3) 三、C语言中的分支与循环—switch语句&#xff08;4&#xff09;分支结构 完 本章循环结构的…

【SpringBoot框架篇】34.使用Spring Retry完成任务的重试

文章目录 简要1.为什么需要重试&#xff1f;2.添加maven依赖3.使用Retryable注解实现重试4.基于RetryTemplate模板实现重试 简要 Spring实现了一套重试机制&#xff0c;功能简单实用。Spring Retry是从Spring Batch独立出来的一个功能&#xff0c;已经广泛应用于Spring Batch,…

Linux 进程和计划任务管理

一 内核功用&#xff1a;进程管理、内存管理、文件系统、网络功能、驱动程序、安全功能等 1 程序 是一组计算机能识别和执行的指令&#xff0c;运行于电子计算机上&#xff0c;满足人们某种需求的信息化工具 用于描述进程要完成的功能&#xff0c;是控制进程执行的指令集 2…

LeetCode 82:删除排序链表中的重复元素 II

一、题目描述 给定一个已排序的链表的头 head &#xff0c; 删除原始链表中所有重复数字的节点&#xff0c;只留下不同的数字 。返回 已排序的链表 。 示例 1&#xff1a; 输入&#xff1a;head [1,2,3,3,4,4,5] 输出&#xff1a;[1,2,5]示例 2&#xff1a; 输入&#xff1a…

B01、类加载子系统-02

JVM架构图-英文版 中文版见下图&#xff1a; 1、概述类的加载器及类加载过程 1.1、类加载子系统的作用 类加载器子系统负责从文件系统或者网络中加载Class文件,class文件在文件开头有特定的文件标识。ClassLoader只负责class文件的加载,至于它是否可以运行,则由Execution Engi…

炫酷按钮制作(HTML+CSS+Javascript)

实现效果&#xff1a; 当鼠标点击按钮时&#xff1a; 实现代码&#xff1a; <!DOCTYPE html> <html><head><meta charset"utf-8"><title></title><style>div{margin-top: 20px;margin-left: 20px;}.button{border: soli…

力扣热题100道-矩阵篇

矩阵 73.矩阵置零 给定一个 m x n 的矩阵&#xff0c;如果一个元素为 0 &#xff0c;则将其所在行和列的所有元素都设为 0 。请使用 原地 算法**。** 示例 1&#xff1a; 输入&#xff1a;matrix [[1,1,1],[1,0,1],[1,1,1]] 输出&#xff1a;[[1,0,1],[0,0,0],[1,0,1]]示例…

CSS 顶部位置翻转动画

<template><div class"container" mouseenter"startAnimation" mouseleave"stopAnimation"><!-- 旋方块 --><div class"box" :class"{ rotate-hor-top: isAnimating }"><!-- 元素内容 --><…

stable diffusion 基础教程-图生图

界面 图生图大概有以下几个功能: 图生图涂鸦绘制局部绘制局部绘制(涂鸦蒙版)其常用的也就上面四个,接下来逐步讲解。 以图反推提示词 图生图可以根据反推提示词来获取相应图片的提示词,目前3种主流方式,如下: CLIP反推提示词:推导出的文本倾向于自然语言的描述方式,…

Hive详解、配置、数据结构、Hive CLI

一、Hive 认识 1. Hive 应用 问题&#xff1a;公司的经营状况&#xff1f; 主题一&#xff1a;财务现金流指标1.1&#xff1a;净现金流入/流出量指标1.2&#xff1a;现金转换周期预算执行状况指标2.1&#xff1a;预算内成本控制指标2.2&#xff1a;预算与实际支出的差异 主题…

电路笔记 :自激振荡电路笔记 电弧打火机

三极管相关 三极管的形象描述 二极管 简单求解&#xff08;理想&#xff09; 优先导通&#xff08;理想&#xff09; 恒压降 稳压管&#xff08;二极管plus&#xff09; 基础工作模块 理想稳压管的工作特性 晶体管之三极管(“两个二极管的组合” ) 电弧打火机电路 1.闭合开…

docker 安装可视化工具 Portainer 以及 汉化

安装portainer是最新版本&#xff0c;汉化指定版本2.9.1 。如果要安装汉化版&#xff0c;可直接跳转步骤四 一、拉去镜像 安装网址&#xff1a;Install Portainer BE with Docker on Linux - Portainer Documentation docker pull portainer/portainer二、根据portainer镜像创建…

Centos7 安装zabbix6.0.25, agent2

Centos 7 版本&#xff08;不支持yum安装zabbix服务端&#xff0c;只能编译安装服务端&#xff09;zabbix 6.0 版本 版本6.0支持年限&#xff1a; Nginx 1.22.1 版本php 7.2.34 版本mariadb 10.5.19 版本 #关闭防火墙 [rootzabbix ~]# systemctl stop firewalld [rootzabbix…

STL-string

目录 &#x1f4a1;介绍 &#x1f4a1;string的基本操作 &#x1f4a1;string的构造函数 &#x1f4a1;string赋值操作 &#x1f4a1;string字符串拼接 &#x1f4a1;string的查找和替换 &#x1f4a1;string字符串比较 &#x1f4a1;string字符存取 &#x1f4a1;str…

Spark---RDD介绍

文章目录 1.Spark核心编程2.RDD介绍2.1.RDD基本原理2.2 RDD特点1.弹性2.分布式 &#xff1a;数据存储在大数据集群的不同节点上3.数据集 &#xff1a;RDD封装了计算逻辑&#xff0c;并不保存数据4.数据抽象 &#xff1a;RDD是一个抽象类&#xff0c;具体实现由子类来实现5. 不可…

C语言实例_math.h库函数功能及其用法详解

一、前言 数学在计算机编程中扮演着至关重要的角色&#xff0c;C语言的math.h头文件提供了一系列的函数和工具&#xff0c;用于数学计算和常用数学函数的实现。这些函数包括数值运算、三角函数、指数对数函数等&#xff0c;为开发人员提供了强大的数学处理能力。本文将对math.…

字符编码转换

宽窄字符和字符编码的关系 多字节(窄)字符&#xff1a;在C/C中&#xff0c;char是一种数据类型&#xff0c;规定sizeof(char)1&#xff0c;即一个char占用一个字节&#xff0c;1Byte8bit。并没有规定一个char就要与ASCII对应&#xff0c;不过&#xff0c;通常情况下char值与AS…