jmeter资料

1.jmeter介绍

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

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

2. jmeter安装

2.1环境准备

jmeter依赖jdk运行环境,所以首先需要安装jdk,并配置环境变量

jdk安装包:

JDK1.8下载与安装(完整图文教程含安装包)

2.2设置jdk环境变量

右键桌面上“我的电脑”>>“属性”,在弹出的页面上点击“高级系统设置”。

在弹出的“系统属性”窗口中“高级”标签页下点击“环境变量”按钮。

在弹出的“环境变量”窗口中,点击下方的“新建”按钮,在弹出的“新建系统变量”窗口中,新建一个名为“JAVA_HOME”的环境变量,变量值为Java的安装路径,本人为:D:\project\tool\Java\jdk_9.0.1。如图所示。

设置Path环境变量,该变量已经存在,所以在列表中选择Path,点击下方的“编辑”按钮,在弹出的窗口中添加如下信息:%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin,然后点击“确认”按钮即可。如图所示:

和JAVA_HOME一样,新建一个名为“classpath”的环境变量,变量值为:%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar。如图所示:

在配置好环境变量后,可以进入cmd中检查Java是否安装正确,检查的命令为 java -version,如图所示:

如果能正确的输出Java的版本和JVM版本信息,则说明Java安装正确。

2.3:jmeter安装包下载

JMeter - 下载安装教程(Windows/macOS/Linux)

2.4:配置jmeter环境变量

配置JMETER_HOME

将JMETER_HOME配置到path

配置好jmeter环境变量后,可以直接在cmd窗口输入 jmeter 启动jmeter

或者直接在运行窗口输入:Jmeter,即可启动

jmeter启动界面:

更改为中文:

进入jmeter后,选中【options】-【choose language】-【chinese(simplified)】即可更改为简体中文

3.jmeter接口测试示例

3.1 测试示例

右键选中【test plan】选中【添加】-【线程(用户)】-线程组

右键选中【线程组】选中【添加】【取样器】【http请求】

进入http请求界面,蒋接口信息填写至http请求界面

接口信息输入完成后可以选中【http请求】,添加【监听器】【查看结果树】

信息输入完成后点击最上方菜单栏【发送】按钮发送http请求

进入【查看结果树】查看运行结果,也可以在结果树中将响应语言更改为你需要的语言

3.2 其他实用的配置元件

【响应断言】添加后可以自动判断响应的内容是不是需要的内容,不符合就会在结果树中报错

【断言结果】可以直观的看到响应断言的结果

【用表格查看结果】适用于压测时更直观展示多次请求的请求结果

【HTTPcookie管理器】发送需要cookie的接口请求时可以添加设置所需的cookie

3.3 常用小功能

【禁用】测试计划中包含多个接口请求时,可以通过【禁用】关闭不需要的接口或配置元件

【清除】发送多个接口请求后,将之前的响应接口清空

4.jmeter进行简单的压力测试

4.1 对请求次数和线程数进行设置

线程数:相当于多个用户

请求次数:相当于每个用户的执行次数

4.2 对请求参数进行参数化设置

准备一个记录好请求参数的csv格式的文件 如下图所示

添加 CSV Data Set Config至线程组

将变量名及文件路径填写至输入框 (需注意:变量名称需与表格中的内容对应)

将接口中的请求参数变更为之前设置的变量名 格式为:${变量名}

4.3 添加【聚合报告】及【用表格查看结果】 执行压力测试并分析测试结果

聚合报告:更宏观的查看所有请求总计的各种数据

用表格查看结果:可以查看每次请求的各种数据

Sample#:每个请求的序号。

Start Time:每个请求开始时间。(时:分:秒.毫秒)

Thread Name:每个线程的名称(线程序号-第N次循环次数)。

Label:每个请求的自定义名称(无修改时默认显示请求类型,如Http,FTP等请求)。

Sample Time(ms):每个请求的响应时间。(单位:毫秒)

Status:请求状态,如果为勾则表示成功,如果为叉表示失败。

Bytes:响应的字节数,请求的字节数。

Sent Bytes:发送的字节数。

Latency:延迟的时间,等待时长。(单位:毫秒)

Connect Time(ms):连接服务器的时间。(单位:毫秒)

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

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

相关文章

大数据技术之Kafka:一篇文章带你学会Kafka

大数据技术之Kafka:一篇文章带你学会Kafka 第1章Kafka概述 1.1 消息队列 (1)点对点模式(一对一,消费者主动拉取数据,消息收到后消息清除)点对点模型通常是一个基于拉取或者轮询的消息传送模型…

视频怎么去水印?如何下载保存无水印视频?

你是否曾经在观看鬼畜素材视频时,被烦人的水印挡住了视线,让你感到十分郁闷?不要担心,今天我将为你介绍几种经典的方法,让你轻松下载无水印视频,让观看体验更加清爽不留痕迹。让我们一起来试试吧&#xff0…

【PTA题目】7-15 寻找数中连续数字构成的最大素数 分数 20

7-15 寻找数中连续数字构成的最大素数 分数 20 全屏浏览题目 切换布局 作者 叶斌 单位 成都信息工程大学 输入一个整数,找出其中由N(N>1)个连续数字组成的最大素数,如果找不到素数,则输出None。 输入格式: 输入1个正整数。 输出格式…

静态资源地址API字节流访问服务器文件区别及相互兼容方案

静态资源地址&API字节流访问服务器文件区别及相互兼容方案 概述特殊场景分析&猜测解决 概述 访问文件资源,一般常见的有两种方式: 静态资源地址:https://www.baidu.com/aaa.png、https://www.baidu.com/video.mp4接口获取文件流&am…

非空断言,

先看下TypeScript基础之非空断言操作符、可选链运算符、空值合并运算符-CSDN博客 我没有复现出来,但是我知道了它的作用 用 let str: string arg!; 代替 let str: string; if (arg) { str arg; } 非空断言(!)和不使用的区别在于对于…

【Linux】TCP套接字编程

目录 前言 UDP服务器的完善 线程的封装 结构定义 接口实现 环形队列 结构定义 接口实现 加锁 信号量的申请与释放 入队与出队 整体组装 初始化与析构 信息接收线程 消息发送线程 TCP套接字 创建套接字 listen accept 收发操作 客户端的编写 进一步完善 …

每日一题:LeetCode-1089. 复写零

每日一题系列(day 09) 前言: 🌈 🌈 🌈 🌈 🌈 🌈 🌈 🌈 🌈 🌈 🌈 🌈 🌈 &#x1f50e…

浅学指针(4)函数指针数组和qsort的使用

系列文章目录 文章目录 系列文章目录前言1.函数指针数组的⽤途作用:可以让代码更简洁,逻辑更清晰 2. 回调函数回调函数就是⼀个通过函数指针调⽤的函数 3 . qsort函数qsort函数可以排序所有数据类型解释如图:![在这里插入图片描述](https://i…

Google Chrome 下载 (离线版)

1 访问网址 Google Chrome 网络浏览器 2 点击 下载Chrome 3 直接运行 ChromeStandaloneSetup64.exe 其他: ####################### 谷歌浏览器 (Google Chrome) 最新版离线安装包下载 https://www.iplaysoft.com/tools/chrome/#google_vignette Google Chrome …

socks5代理如何工作?socks5代理可以用来做什么?

socks5代理是一种网络代理服务器,它通常用于改变网络请求的传输方式和地址,从而使得网络请求能够通过代理服务器进行访问。本文将介绍socks5代理的工作原理、优势、使用场景以及如何选择合适的socks5代理。 一、socks5代理的工作原理 socks5代理是一种协…

golang strings包的基本操作

文章目录 golang 的字符串函数EqualFoldHasPrefixHasSuffixContainsContainsRuneContainsAnyCountIndexIndexByteIndexRuneIndexAnyIndexFuncLastIndexLastIndexAnyLastIndexFuncTitleToLowerToLowerSpecialToUpperToUpperSpecialToTitleToTitleSpecialRepeatReplaceMapTrimTri…

一文读懂设备巡检的主要内容

在现代企业和组织中,设备的正常运行是业务持续发展的关键,尤其是制造业,由于其发展趋势不断机械化、自动化、大型化、高速化和复杂化,对设备巡检的要求越来越高。然而,在信息化时代,很多企业目前仍采用纸笔…

GPT实战系列-大模型训练和预测,如何加速、降低显存

GPT实战系列-大模型训练和预测,如何加速、降低显存 不做特别处理,深度学习默认参数精度为浮点32位精度(FP32)。大模型参数庞大,10-1000B级别,如果不注意优化,既耗费大量的显卡资源,…

Python应用:利用matplotlib画学生成绩分布饼图

1. 题目 给定一组学生成绩:[85, 92, 78, 65, 95, 88, 72, 60, 98, 45, 100, 46, 23, 88, 67, 89, 67, 88, 99],现在评分等级为优(90-100)、良(70-89)、及格(60-69)、不及格&#xff…

玩转大数据4:大数据的崛起与应用领域探索

图片来源网络 引言 在当今数字化时代,大数据正以前所未有的速度和规模崛起。大数据的出现不仅改变了企业和组织的经营模式,也对我们的社会生活带来了深刻的影响。Java作为一种广泛使用的编程语言,在大数据领域发挥着重要的作用。本文将重点…

【android开发-02】android中OptionMenu用法介绍

Option Menu 是 Android 中一种常用的菜单方式,它通常用于在屏幕的顶部显示一个下拉菜单,提供一些常用的功能或操作选项。菜单里的菜单项默认不会显示出来,需要点击右上角三个点的菜单按钮。以下是一些使用 Option Menu 的基本步骤&#xff1…

树莓派,linux换清华源

清华源网址 https://mirrors.tuna.tsinghua.edu.cn/help/raspbian/ 更换软件源 鉴于国内网络环境下载各大镜像,软件包速度慢的问题,需要更换软件源,以防下载慢,且在本教程中,统一更换为清华源。 2.3.1 更换树莓派软…

工程师每日刷题 -4

文章目录 1、深度学习2、算法与数据结构2.1、暴力解法2.2、滑动窗口法 3、编程基础 1、深度学习 问题:CNN的本质和优势? CNN 本质上是一个多层感知机 (MLP),其成功的原因关键在于它所采用的【稀疏连接】(局部感受)和…

【带头学C++】----- 九、类和对象 ---- 9.3 析构函数

9.3 析构函数 9.3.1 如何定义析构函数 函数名和类名称相同,在函数名前加 ~ ,没有返回值类型,没有函数形参。 (不能被重载) 当对象生命周期结束的时候,系统自动调用析构函数(析构函数会先清理对象占用内存空间存放的…

【openssl】Window系统如何编译openssl

本文主要记录如何编译出windows版本的openss的lib库 1.下载openssl,获得openssl-master.zip。 a.可以通过github(网址在下方)上下载最新的代码、今天是2023.12.1我用的master版本,下载之后恭喜大侠获得《openssl-master.zip》 …