『动善时』JMeter基础 — 57、Linux系统中运行JMeter脚本
在Linux系统中运行JMeter脚本,需要有两个前提:
- Linux系统中配置好Java环境。
- Linux系统中配置好JMeter环境。(因为JMeter的运行需要Java环境)
1、Linux系统中安装Java环境
环境说明:
- Linux系统:
CentOS 7.8- Java版本:
JDK 1.8准备操作:
- 下载
JDK 1.8安装包:jdk-linux-x64.tar.gz(包名会不同)- 把
jdk-linux-x64.tar.gz安装包,传入Linux系统的/usr/java/目录中。
(1)解压Java安装包
# 1.查看安装包路径
[root@localhost ~]# ll /usr/java/
总用量 181192
-rw-r--r--. 1 root root 185540433 6月 5 22:19 jdk-linux-x64.tar.gz
[root@localhost ~]#
# 2.解压Java安装包,得到jdk1.8.0_131文件夹
[root@localhost /]# cd /usr/java/
[root@localhost java]# tar -zxvf jdk-linux-x64.tar.gz
[root@localhost java]# ll
总用量 181192
drwxr-xr-x. 8 10 143 255 3月 15 2017 jdk1.8.0_131
-rw-r--r--. 1 root root 185540433 6月 5 22:19 jdk-linux-x64.tar.gz
(2)配置Java环境变量
在/etc/profile文件中,配置Java的环境变量。
配置内容如下:
# 配置到文件的最下方
export JAVA_HOME=/usr/java/jdk1.8.0_131
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib:$CLASSPATH
export JAVA_PATH=${JAVA_HOME}/bin:${JRE_HOME}/bin
export PATH=$PATH:${JAVA_PATH}
如下图所示:

提示:
保存完之后,我们还需要让刚刚配置的环境变量生效,通过
source /etc/profile命令,让系统重启加载/etc/profile文件中的内容,使其立即生效。当然也可以重启电脑生效。
(3)验证Java环境是否配置成功
执行命令:java -version
出现如下内容,说明Java环境配置成功了。
[root@localhost ~]# java -version
java version "1.8.0_131"
Java(TM) SE Runtime Environment (build 1.8.0_131-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.131-b11, mixed mode)
2、Linux系统中安装JMeter
(1)下载JMeter
JMeter下载地址:http://jmeter.apache.org/download_jmeter.cgi
在该页面中,点击apache-jmeter-5.4.1.tgz下载。
如下图所示:

(2)把JMeter安装包传入Linux系统
把apache-jmeter-5.4.1.tgz文件,传入Linux系统的/usr/local目录中。
[root@localhost local]# pwd
/usr/local
[root@localhost local]# ll
总用量 69048
-rw-r--r--. 1 root root 70704620 6月 5 23:27 apache-jmeter-5.4.1.tgz
drwxr-xr-x. 2 root root 6 4月 11 2018 bin
drwxr-xr-x. 2 root root 6 4月 11 2018 etc
drwxr-xr-x. 2 root root 6 4月 11 2018 games
drwxr-xr-x. 2 root root 6 4月 11 2018 include
drwxr-xr-x. 2 root root 6 4月 11 2018 lib
drwxr-xr-x. 2 root root 6 4月 11 2018 lib64
drwxr-xr-x. 2 root root 6 4月 11 2018 libexec
drwxr-xr-x. 2 root root 6 4月 11 2018 sbin
drwxr-xr-x. 5 root root 49 3月 15 09:35 share
drwxr-xr-x. 2 root root 6 4月 11 2018 src
(3)把JMeter安装包解压缩
# 解压安装包
[root@localhost local]# tar -zxvf apache-jmeter-5.4.1.tgz
# 得到解压后jmeter目录
[root@localhost local]# ll
总用量 69048
drwxr-xr-x. 8 root root 138 1月 2 1970 apache-jmeter-5.4.1 (这个就是)
-rw-r--r--. 1 root root 70704620 6月 5 23:27 apache-jmeter-5.4.1.tgz
drwxr-xr-x. 2 root root 6 4月 11 2018 bin
drwxr-xr-x. 2 root root 6 4月 11 2018 etc
drwxr-xr-x. 2 root root 6 4月 11 2018 games
drwxr-xr-x. 2 root root 6 4月 11 2018 include
drwxr-xr-x. 2 root root 6 4月 11 2018 lib
drwxr-xr-x. 2 root root 6 4月 11 2018 lib64
drwxr-xr-x. 2 root root 6 4月 11 2018 libexec
drwxr-xr-x. 2 root root 6 4月 11 2018 sbin
drwxr-xr-x. 5 root root 49 3月 15 09:35 share
drwxr-xr-x. 2 root root 6 4月 11 2018 src
(4)配置JMeter环境变量
在/etc/profile文件中,配置JMeter的环境变量。
配置内容如下:
# 配置到文件的最下方
export JMETER_HOME=/usr/local/apache-jmeter-5.4.1
export PATH=$PATH:${JMETER_HOME}/bin
如下图所示:

提示:
保存完之后,我们还需要让刚刚配置的环境变量生效,通过
source /etc/profile命令,让系统重启加载/etc/profile文件中的内容,使其立即生效。当然也可以重启电脑生效。
(5)验证JMeter环境是否配置成功
执行命令:jmeter -v
出现如下内容,说明JMeter环境配置成功了。
[root@localhost ~]# jmeter -v
_ ____ _ ____ _ _ _____ _ __ __ _____ _____ _____ ____
/ \ | _ \ / \ / ___| | | | ____| | | \/ | ____|_ _| ____| _ \
/ _ \ | |_) / _ \| | | |_| | _| _ | | |\/| | _| | | | _| | |_) |
/ ___ \| __/ ___ \ |___| _ | |___ | |_| | | | | |___ | | | |___| _ <
/_/ \_\_| /_/ \_\____|_| |_|_____| \___/|_| |_|_____| |_| |_____|_| \_\ 5.4.1
Copyright (c) 1999-2021 The Apache Software Foundation
3、Linux系统中执行JMeter脚本
把JMeter脚本,放入/usr/local/apache-jmeter-5.4.1/bin目录中。(脚本可以不添加监听器)
然后进入到/usr/local/apache-jmeter-5.4.1/bin目录中,执行如下命令:
jmeter -n -t CLI_test.jmx -l result.jtl
参数解释:
-n:表示non gui mode,就是非图形化模式。-t:指定JMX脚本路径,即test plan(测试计划)。后面跟需要运行的JMeter 脚本的路径和脚本名称。-l:指定结果文件路径。后面跟输出结果文件路径和结果文件名称。
1)若没有指定指定结果文件路径,则自动创建,可以生成.csv文件或者.jtl文件。
2)若只写脚本名称,则默认是在当前目录查找或创建。-e:设置测试完成后生成测试报表。-o:指定测试报表生成文件夹。文件夹必须为空或不存在。
运行结果如下:
[root@localhost bin]# jmeter -n -t CLI_test.jmx -l result.jtl
Creating summariser <summary>
Created the tree successfully using CLI_test.jmx
Starting standalone test @ Sun Jun 06 11:47:20 CST 2021 (1622951240796)
Waiting for possible Shutdown/StopTestNow/HeapDump/ThreadDump message on port 4445
summary + 101 in 00:02:09 = 0.8/s Avg: 64563 Min: 63303 Max: 64680 Err: 101 (100.00%) Active: 100 Started: 100 Finished: 0
summary + 99 in 00:00:00 = 322.5/s Avg: 63416 Min: 63276 Max: 63535 Err: 99 (100.00%) Active: 0 Started: 100 Finished: 100
summary = 200 in 00:02:09 = 1.5/s Avg: 63995 Min: 63276 Max: 64680 Err: 200 (100.00%)
Tidying up ... @ Sun Jun 06 11:49:32 CST 2021 (1622951372015)
... end of run
补充说明:
因为我们配置了JMeter的环境变量,所以我们在任何目录中都能够执行JMeter命令。
如下所示,在Linux中的/root目录中,执行JMeter测试脚本,也是一样运行的。
[root@localhost ~]# jmeter -n -t /usr/local/apache-jmeter-5.4.1/bin/CLI_test.jmx -l result.jtl
Creating summariser <summary>
Created the tree successfully using /usr/local/apache-jmeter-5.4.1/bin/CLI_test.jmx
Starting standalone test @ Sun Jun 06 11:50:28 CST 2021 (1622951428991)
Waiting for possible Shutdown/StopTestNow/HeapDump/ThreadDump message on port 4445
summary + 1 in 00:01:04 = 0.0/s Avg: 63262 Min: 63262 Max: 63262 Err: 1 (100.00%) Active: 100 Started: 100 Finished: 0
summary + 199 in 00:01:04 = 3.1/s Avg: 63236 Min: 63011 Max: 63459 Err: 199 (100.00%) Active: 0 Started: 100 Finished: 100
summary = 200 in 00:02:07 = 1.6/s Avg: 63236 Min: 63011 Max: 63459 Err: 200 (100.00%)
Tidying up ... @ Sun Jun 06 11:52:37 CST 2021 (1622951557443)
... end of run
但是要注意:
- 不在JMeter脚本所在的当前目录中执行命令,需要填写脚本文件的全路径。
- 还有就是运行脚本所产生的
jmeter.log文件和结果文件,如果没有指定生成路径的话。会在执行JMeter命令的当前目录中生成。(这点要注意一下)
提示:在Windows系统中执行JMeter脚本,和在Linux系统执行JMeter脚本基本上是一样的。所以这里就不展开说明了。
『动善时』JMeter基础 — 57、Linux系统中运行JMeter脚本的更多相关文章
- 『动善时』JMeter基础 — 59、进行JMeter分布式测试遇到的坑
目录 1.控制机端 (1)执行机没有关闭防火墙 (2)内存溢出 2.执行机端 (1)启动jmeter-server服务情况一 (2)启动jmeter-server服务情况二 (3)启动jmeter-s ...
- 『动善时』JMeter基础 — 58、JMeter分布式测试
目录 1.JMeter分布式测试概念 2.JMeter分布式测试前提条件 3.JMeter实现分布式测试 (1)在执行机中的配置 (2)在控制机中的配置 (3)启动执行机中的JMeter服务 (4)在 ...
- 『动善时』JMeter基础 — 61、使用JMeter监控服务器
目录 1.监控插件安装 2.启动监控服务 3.使用JMeter监控服务器 (1)测试计划内包含的元件 (2)HTTP请求界面内容 (3)配置jp@gc-PerfMon Metrics Collecto ...
- 『动善时』JMeter基础 — 6、使用JMeter发送一个最基础的请求
目录 步骤1:创建一个测试计划 步骤2:创建线程组 步骤3:创建取样器 步骤4:创建监听器 步骤5:完善信息 步骤6:保存测试计划 步骤7:查看结果 总结:JMeter测试计划要素 当我们第一次打开J ...
- 『动善时』JMeter基础 — 8、JMeter主要元件介绍
目录 1.测试计划(Test Plan) 2.线程组 3.取样器(sampler) 4.逻辑控制器(Logic Controller) 5.配置元件(Config Element) 6.定时器(Tim ...
- 『动善时』JMeter基础 — 20、JMeter配置元件【HTTP Cookie管理器】详细介绍
目录 1.HTTP Cookie管理器介绍 2.HTTP Cookie管理器界面详解 3.JMeter中对Cookie的管理 (1)Cookie的存储 (2)Cookie的管理策略 4.补充:Cook ...
- 『动善时』JMeter基础 — 37、将JMeter测试结果写入Excel
目录 1.环境准备 (1)引入操作Excel文件的基础JAR包 (2)引入封装自定义操作Excel文件的JAR包 2.准备测试需要的数据 3.测试结果写入Excel演示 (1)测试计划内包含的元件 ( ...
- 『动善时』JMeter基础 — 40、JMeter中ForEach控制器详解
目录 1.什么是逻辑控制器 2.ForEach控制器介绍 3.ForEach控制器的使用 (1)测试计划内包含的元件 (2)获取学院列表请求内容 (3)JSON提取器内容 (4)ForEach控制器内 ...
- 『动善时』JMeter基础 — 41、使用JMeter连接数据库(MySQL)
目录 1.为什么要使用JMeter连接数据库 2.JMeter连接数据库的前提 3.JDBC连接配置组件界面介绍 4.JMeter连接数据库演示 (1)测试计划内包含的元件 (2)测试计划中添加链接数 ...
随机推荐
- 阿里云短信功能php
1. 引入文件: https://help.aliyun.com/document_detail/53111.html?spm=a2c1g.8271268.10000.99.5a8ddf25gG0wW ...
- Sentry 监控 - Security Policy 安全策略报告
系列 1 分钟快速使用 Docker 上手最新版 Sentry-CLI - 创建版本 快速使用 Docker 上手 Sentry-CLI - 30 秒上手 Source Maps Sentry For ...
- Java面向对象系列(5)- 构造器详解
构造器: 和类名相同 没有返回值 作用: new本质在调用构造器 初始化对象的值 注意点: 定义了有参构造之后,如果想要使用有参构造,必须显示的定义一个无参构造 IDEA快捷键: Alt + Inse ...
- Python调用函数带括号和不带括号的区别
1.不带括号时,调用的是这个函数本身 ,是整个函数体,是一个函数对象,不需等该函数执行完成 2.带括号(此时必须传入需要的参数),调用的是函数的return结果,需要等待函数执行完成的结果 如果函数本 ...
- 动图图解GC算法 - 让垃圾回收动起来!
原创:码农参上(微信公众号ID:CODER_SANJYOU),欢迎分享,转载请保留出处. 提到Java中的垃圾回收,我相信很多小伙伴和我一样,第一反应就是面试必问了,你要是没背过点GC算法.收集器什么 ...
- "错误: 找不到或无法加载主类"解决办法
前言:记上次一个找了个把小时的问题(很烦这些配置) 原因: 从svn下checkOut的项目 在application的配置的输出class路径为main,而class文件路径是在项目名的根路径下,所 ...
- mybatis: No enum constant org.apache.ibatis.type.JdbcType."VARCHAR"
mybatis 插入的时候一句sql报错如下. org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ib ...
- 使用VUE+原生PHP完成搜索后分页的效果
html代码: <!doctype html> <html lang="en"> <head> <meta charset="U ...
- 设计模式如何提升 vivo 营销自动化业务扩展性 | 引擎篇01
在<vivo 营销自动化技术解密 |开篇>中,我们从整体上介绍了vivo营销自动化平台的业务架构.核心业务模块功能.系统架构和几大核心技术设计. 本次带来的是系列文章的第2篇,本文详细解析 ...
- 将Oracle数据库数据每天备份恢复一次数据到另一台服务器上两份数据
1.创建用户,授权,创建测试数据 创建用户 CREATE USER test identified by 123; 授权 grant dba to test; 创建测试数据 create table ...