jmeter笔记(1)--原理,下载与安装
Apache JMeter是Apache组织开发的基于Java的压力测试工具。用于对软件做压力测试,它最初被设计用于Web应用测试,但后来扩展到其他测试领域。 它可以用于测试静态和动态资源,例如静态文件、Java 小服务程序、CGI 脚本、Java 对象、数据库、FTP 服务器, 等等。JMeter 可以用于对服务器、网络或对象模拟巨大的负载,来自不同压力类别下测试它们的强度和分析整体性能。另外,JMeter能够对应用程序做功能/回归测试,通过创建带有断言的脚本来验证你的程序返回了你期望的结果。为了最大限度的灵活性,JMeter允许使用正则表达式创建断言。
一、原理
jmeter基本原理是建立一个线程池,多线程运行取样器产生大量负载,在运行中通过断言来验证结果的正确性,通过监听器来记录测试结果。
二、下载及安装
jmeter本身不需要安装,只需要配置好JDK环境,然后在在jmeter文件中的bin文件中打开jmeter.bat文件即可(windows环境)
不同jmeter版本对Java版本要求不一样(官网下载时会有提示),建议配置jmeter时先确认JDK版本
关于环境变量配置:
检查下电脑有没有装JDK以及安装版本:开始->运行->然后输入cmd->进入命令行界面,输入java -version , 出现以下信息就是此电脑已安装了JDK
安装JDK
正常安装,一路默认就好,记住安装路径,配置环境变量时用得到。默认安装路径: C:\Program Files\Java\jdk1.8.0_51。 安装好之后会有两个文件夹一个是jdk 一个是jre(运行)
配置JDK环境变量
变量名:JAVA_HOME
变量值: C:\Program Files\Java\jdk1.8.0_51 (即jdk安装的位置)
变量名:Path (这个变量名已在系统变量中存在,现只需在这个值的前面添加以下变量值就可以了)
变量值: %JAVA_HOME%\bin;%JAVA_HOME%\jre\bin
变量名:CLASSPATH
变量值:.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar(记住前面的.)
配置Jmeter环境变量
变量名:JMETER_HOME
变量值:C:\Program Files\apache-jmeter-2.11(即jmeter安装的位置)
变量名:CLASSPATH
变量值:%JMETER_HOME%\lib\ext\ApacheJMeter_core.jar;%JMETER_HOME%\lib\jorphan.jar;
%JMETER_HOME%\lib/logkit-2.0.jar;
三、启动jmeter
找到Jmeter安装目录-bin-jmeter.bat 双击打开就好,会弹出两个窗口,一个是windows的cmd窗口,一个是Jmeter我们使用的测试界面(记住弹出的widows命令窗口不能关闭)

==============================================================================
Don't use GUI mode for load testing, only for Test creation and Test debugging !
For load testing, use NON GUI Mode:
jmeter -n -t [jmx file] -l [results file] -e -o [Path to output folder]
& adapt Java Heap to your test requirements:
Modify HEAP="-Xms512m -Xmx512m" in the JMeter batch file
==============================================================================
上面的意思就是:不要使用GUI运行压力测试,GUI仅用于压力测试的创建和调试;
使用下面的命令来执行测试:
jmeter -n -t [jmx file] -l [results file] -e -o [Path to web report folder]
并且修改JMeter批处理文件的环境变量:HEAP="-Xms512m -Xmx512m"
但行好事,莫问前程
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· DeepSeek 开源周回顾「GitHub 热点速览」
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了