在 Ubuntu 上运行 JMeter 的完整步骤
一 准备环境
- 安装 Java(JMeter 为 Java 应用)。推荐 OpenJDK 8 或 11(服务器常用无头环境可选 openjdk-11-jdk-headless)。
- 更新索引并安装:sudo apt update && sudo apt install -y openjdk-11-jdk-headless
- 验证:java -version(应输出版本号);如需编译可再检查 javac -version
- 创建专用目录并下载解压 Apache JMeter(以 5.6.3 为例,可按需替换为最新版本):
- 下载:wget https://dlcdn.apache.org//jmeter/binaries/apache-jmeter-5.6.3.tgz
- 解压与安置:tar -xzf apache-jmeter-5.6.3.tgz && sudo mv apache-jmeter-5.6.3 /opt/jmeter
- 配置环境变量(全局或当前用户均可):
- 编辑:sudo nano /etc/profile(或 ~/.bashrc)
- 写入:
- export JMETER_HOME=/opt/jmeter
- export PATH=$JMETER_HOME/bin:$PATH
- 生效:source /etc/profile(或 source ~/.bashrc)
- 验证安装:jmeter -v(应输出版本信息)
二 运行方式
- 图形界面模式(仅在有桌面环境的 Ubuntu 上使用,用于创建/调试测试计划)
- 直接启动:jmeter
- 或:/opt/jmeter/bin/jmeter
- 非 GUI 模式(服务器/无头环境推荐,适合压测执行)
- 基本执行:jmeter -n -t /path/to/test.jmx -l /path/to/result.jtl
- 生成 HTML 报告:jmeter -n -t /path/to/test.jmx -l /path/to/result.jtl -e -o /path/to/report
- 常用参数说明:
- -n:非 GUI 模式
- -t:指定 JMX 测试计划
- -l:保存结果到 JTL 文件
- -j:指定日志文件
- -e -o:生成并导出 HTML 报告(目录必须为空)
- -r:远程执行(需配置远程引擎)
三 常用操作与示例命令
- 上传测试计划:将本地 .jmx 脚本上传至服务器(如 /opt/jmeter/tests/)
- 执行并生成报告:
- jmeter -n -t /opt/jmeter/tests/example.jmx -j /opt/jmeter/logs/example.log -l /opt/jmeter/results/example.jtl -e -o /opt/jmeter/report/example
- 查看结果:
- 在服务器查看日志:cat /opt/jmeter/logs/example.log
- 将 result.jtl 下载到本地,在 JMeter GUI 中通过“聚合报告/查看结果树”等监听器打开以分析
- 远程执行(可选):
- 在控制机执行:jmeter -n -t /path/to/test.jmx -r
- 需提前在 jmeter.properties 或命令行中配置 remote_hosts,并在目标机启动 jmeter-server
四 常见问题与扩展
- Java 未安装或版本不兼容:请安装 OpenJDK 8/11 并确认 java -version 正常
- 权限问题:确保 /opt/jmeter/bin/jmeter 有可执行权限(chmod +x /opt/jmeter/bin/jmeter)
- 插件与依赖:
- 使用 JMeter 插件管理器(Plugins Manager)时,将插件 JAR 放入 lib/ext 目录
- 使用 WebSocket 等采样器时,需放置相应依赖 JAR(如 jetty-.jar、websocket-.jar)到 lib/ext,否则可能出现 NoClassDefFoundError
- 分布式压测:准备多台机器,配置 jmeter-server 与控制机的 remote_hosts 后使用 -r 远程执行