当前位置: 首页 > news >正文

JMeter介绍、安装配置以及快速入门

文章目录

  • 1. JMeter简介
  • 2. JMeter安装配置
  • 3. JMeter快速入门

1. JMeter简介

Apache JMeter是一款开源的压力测试工具,主要用于测试静态和动态资源(如静态文件、服务器、数据库、FTP服务器等)的性能。它最初是为测试Web应用而设计的,但后来扩展到其他测试领域,包括WebSocket、SOAP/RESTful Web服务、FTP、JDBC、LDAP、SMTP、JMS、TCP以及几乎任何可以使用Java实现的协议。

JMeter的主要特点包括:

  1. 负载测试:可以模拟大量用户同时访问系统,从而测试系统的响应时间和稳定性。
  2. 功能测试:可以通过发送请求并检查返回的结果来验证应用程序的功能。
  3. 断言和监听器:提供多种断言和监听器,用于验证测试结果和监控测试过程。
  4. 可编程性:支持使用BeanShell、Groovy等脚本语言进行定制化测试逻辑。
  5. 分布式测试:可以配置多台机器协同执行测试,以模拟更高的负载。
  6. 数据驱动测试:可以从外部文件读取数据,用以动态生成测试请求。
  7. 报告和图表:能够生成详细的测试报告和各种类型的图表,帮助分析测试结果。

JMeter使用Java编写,因此可以在任何安装了JRE(Java运行环境)的平台上运行。它提供了一个图形界面,方便用户创建和编辑测试计划,并且也支持命令行模式,适合集成到自动化构建和持续集成流程中。

2. JMeter安装配置

在安装JMeter之前,首先要确保有Java的环境,要求JDK8+.

可以打开命令行终端 输入 java --version进行检查

QQ_1721445545918

JMeter官网:Apache JMeter - Apache JMeter™

点击Download Releases

QQ_1721445244314

选择zip下载即可

QQ_1721445295780

下载完成解压即可,注意解压路径最少不要出现中文

QQ_1721445387919

进入bin目录,直接双击ApacheJMeter.jar即可启动JMeter.

QQ_1721445577207

启动完成

QQ_1721445625472

建议: 可以右键ApacheJMeter.jar创建快捷方式

QQ_1721445692658

然后把它拖到桌面上,重命名为JMeter即可.

QQ_1721445779235

以后直接双击桌面上的快捷方式启动即可.不需要配置环境变量,当然如果想配置环境变量也可以.

环境变量配置如下:

在系统环境变量中新建一个系统变量如下:

QQ_1721446072619

  • 变量名可以随意设置,不过要和后面对应!

  • 变量值就是解压的路径,填自己的

然后在系统环境变量Path中新增两个环境变量

QQ_1721446218260

注意我这里%%之间是JMeter_HOMR,是因为我上面设置的变量名是这个,要和上面的对应!

%JMeter_HOME%\bin
%JMeter_HOME%\lib\ext\ApacheJMeter_core.jar;%JMeter_HOME%\lib\jorphan.jar;

3. JMeter快速入门

需求: 通过JMeter访问百度首页接口,并查看请求和响应信息

步骤如下:

  1. 启动JMeter
  2. 在’测试计划’下添加线程组
  3. 在’线程组’下添加HTTP请求取样器
  4. 填写’HTTP请求’的相关请求数据
  5. 在’线程组’下添加察看结果树监听器
    点击’启动’按钮运行,并查看结果

图文示例:

右键测试计划中 -> 添加 -> 线程 -> 线程组

QQ_1721447524705

右键线程组->添加->取样器->HTTP请求

QQ_1721447582529

右键测试计划 -> 添加 -> 监听器 -> 查看结果树

QQ_1721447650311

在HTTP请求中填写相关信息

QQ_1721448158097

填写完成之后,要进行保存. 快捷键Ctrl + s

保存完之后点击绿色的小三角进行启动

QQ_1721448310828

点击查看结果树,即可查看到对应的请求以及响应数据
QQ_1721448418193

http://www.lryc.cn/news/405737.html

相关文章:

  • GPT LangChain experimental agent - allow dangerous code
  • 1 LableMe安装下载
  • rce漏洞-ctfshow(50-70)
  • vulntarget-a靶机-复现报告
  • 为什么 FPGA 的效率低于 ASIC?
  • 使用水星Mecury人形机器人搭建VR遥操作控制平台!
  • 【学习笔记】无人机系统(UAS)的连接、识别和跟踪(三)-架构模型和概念
  • uniapp bug解决:uniapp文件查找失败:‘uview-ui‘ at main.js:14
  • Python 爬虫(爬取百度翻译的数据)
  • 【LeetCode:2766. 重新放置石块 + 哈希表】
  • [C++]类的自动转换和强制类型转换
  • 根据鼠标所在位置获取组件拿到 “qt_scrollarea_viewport” 组件的问题
  • 深入浅出WebRTC—LossBasedBweV2
  • 就业难?誉天Linux云计算架构师涨薪班,不涨薪退学费
  • 从零开始!Jupyter Notebook的安装教程
  • FastAPI(七十)实战开发《在线课程学习系统》接口开发--留言功能开发
  • 04-数据库MySQL
  • 神经网络理论(机器学习)
  • JNI回调用中不同线程的env无法找到正确的kotlin的class
  • 免费HTML模板网站汇总
  • 大屏数据看板一般是用什么技术实现的?
  • 在 Kubernetes 中设置 Pod 优先级及其调度策略详解
  • Spring框架、02SpringAOP
  • 基于python的网络爬虫爬取天气数据及可视化分析
  • 【WPF开发】上位机开发-串口收发
  • ubuntu开启 远程登录 允许root远程登录
  • 《昇思25天学习打卡营第23天|RNN实现情感分类》
  • 机械设计基础B(学习笔记)
  • MybatisPlusException: Error: Method queryTotal execution error of sql 的报错解决
  • 人工智能领域的顶尖影响力人物(部分代表)