JMeter在Debian上的使用教程
导读:在 Debian 上使用 JMeter 的完整教程 一 环境准备与安装 安装 Java(推荐 OpenJDK 11,JMeter 5.x 在 Java 8+ 均可运行) 更新索引并安装:sudo apt update &&...
在 Debian 上使用 JMeter 的完整教程
一 环境准备与安装
- 安装 Java(推荐 OpenJDK 11,JMeter 5.x 在 Java 8+ 均可运行)
- 更新索引并安装:
sudo apt update & & sudo apt install -y openjdk-11-jdk - 验证版本:
java -version、javac -version
- 更新索引并安装:
- 安装 JMeter(两种常用方式)
- 方式 A 仓库安装(版本可能较旧):
sudo apt install -y jmeter - 方式 B 官方压缩包(获取最新稳定版)
- 下载:
wget https://dlcdn.apache.org//jmeter/binaries/apache-jmeter-5.4.3.tgz - 解压:
tar -xzf apache-jmeter-5.4.3.tgz & & mv apache-jmeter-5.4.3 ~/jmeter - 建议将
~/jmeter/bin加入 PATH,便于全局执行:echo 'export PATH=$PATH:~/jmeter/bin' > > ~/.bashrc & & source ~/.bashrc
- 下载:
- 方式 A 仓库安装(版本可能较旧):
- 验证安装:执行
jmeter -v应输出版本信息;如需 GUI 模式,可直接运行jmeter(需桌面环境)。
二 快速开始 非 GUI 命令行压测
- 准备测试计划:在 JMeter GUI 中创建并保存为 test_plan.jmx(或在 Linux 下用模板创建)。
- 非 GUI 执行与结果保存(推荐)
- 基本命令:
~/jmeter/bin/jmeter -n -t test_plan.jmx -l results.jtl
- 常用参数
-n非 GUI 模式;-t指定脚本;-l指定结果文件(JTL/CSV)-e -o report生成 HTML 报告(需与-l不同目录)-r使用 远程主机列表(在jmeter.properties的remote_hosts中配置)-X测试结束后退出
- 基本命令:
- 示例(生成报告)
~/jmeter/bin/jmeter -n -t test_plan.jmx -l results.jtl -e -o report
- 说明:非 GUI 模式资源占用更低,适合在服务器上执行压测与定时任务。
三 分布式压测 主控与代理
- 架构说明:一台 Controller(主控机)调度多台 Agent(负载机)产生并发压力。
- 在所有机器准备相同版本的 Java 与 JMeter(建议同版本,避免兼容性问题)。
- 在每台 Agent 上启动 RMI 服务
- 进入 JMeter 的 bin 目录:
./jmeter-server
- 若出现
java.io.FileNotFoundException: rmi_keystore.jks,在jmeter.properties中设置:server.rmi.ssl.disable=true(取消注释并改为 true),然后重启jmeter-server
- 进入 JMeter 的 bin 目录:
- 在 Controller 上配置并启动分布式测试
- 配置
jmeter.properties的remote_hosts:remote_hosts=192.168.1.11:1099,192.168.1.12:1099
- 启动测试(指定远程代理):
~/jmeter/bin/jmeter -n -t test_plan.jmx -R 192.168.1.11,192.168.1.12 -l dist_results.jtl
- 配置
- 网络与防火墙
- 确保 Controller 与 Agents 之间 1099 端口互通(RMI 默认端口),以及可能的 4444 端口(JMeter RMI 回调端口,视配置而定)。
- 常见问题
- 跨平台编辑 JMX 文件时避免包含非 ASCII 中文 或特殊编码,可能导致解析异常。
- 控制机与被控机 JMeter 大版本保持一致,避免因版本差异导致脚本不兼容。
四 与 Jenkins Ant 持续集成
- 准备环境:安装 Ant 与 Jenkins,并在 Jenkins 全局工具中配置 JAVA_HOME。
- 目录约定
- JMeter 目录:
/opt/jmeter/apache-jmeter-5.0 - 结果目录:
/var/jmeter/result
- JMeter 目录:
- 编写 Ant 构建脚本
build.xml(核心片段)- 关键属性与任务:
- 定义
jmeter.home、jmeter.result.jtl.dir、jmeter.result.html.dir - 使用
jmeter任务执行脚本,输出 XML 结果 - 使用
xslt将 XML 转为 HTML 报告
- 定义
- 示例要点:
< jmeter jmeterhome="${ jmeter.home} " resultlog="${ jmeter.result.jtlName} "> ...< /jmeter>- 生成报告时引入
xalan*.jar、serializer*.jar与ant-jmeter*.jar
- 关键属性与任务:
- Jenkins Job 配置
- 构建步骤:执行
ant(调用上述build.xml) - 构建后操作:归档 JTL/HTML 报告,并可配置 定时任务 与 邮件通知
- 构建步骤:执行
- 说明:通过 Ant 的 JMeter 任务与 XSLT 转换,可实现自动化执行与可视化报告输出。
五 常见问题与排查
- Java 未安装或版本不兼容
- 现象:
jmeter无法启动或报Unsupported major.minor version - 处理:安装 OpenJDK 11(或 8),
java -version验证
- 现象:
- 远程执行失败
- 现象:
Connection refused或超时 - 处理:检查 1099/4444 端口开放、Agent 已启动
jmeter-server、remote_hosts配置正确
- 现象:
- JMX 文件编码问题
- 现象:
Could not find the TestPlan class! - 处理:避免 中文或特殊编码,统一使用 UTF-8 保存
- 现象:
- 版本不一致
- 现象:脚本在 Windows 上录制/编辑后,在 Linux 上执行报错
- 处理:控制机与被控机 JMeter 版本保持一致
- 生成 HTML 报告失败
- 现象:报告目录非空或缺少依赖
- 处理:确保报告输出目录为空,且
lib/xalan*.jar、lib/serializer*.jar与extras/ant-jmeter*.jar在类路径中可用。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: JMeter在Debian上的使用教程
本文地址: https://pptw.com/jishu/755964.html
