[toc]
在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总用量 181192drwxr-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_131export JRE_HOME=${JAVA_HOME}/jreexport CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib:$CLASSPATHexport JAVA_PATH=${JAVA_HOME}/bin:${JRE_HOME}/binexport PATH=$PATH:${JAVA_PATH}
如下图所示:
提示:
保存完之后,我们还需要让刚刚配置的环境变量生效,通过
source /etc/profile
命令,让系统重启加载
/etc/profile
文件中的内容,使其立即生效。当然也可以重启电脑生效。
(3)验证Java环境是否配置成功
执行命令:
java -version
出现如下内容,说明Java环境配置成功了。
[root@localhost ~]# java -versionjava 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.tgzdrwxr-xr-x. 2 root root 6 4月 11 2018 bindrwxr-xr-x. 2 root root 6 4月 11 2018 etcdrwxr-xr-x. 2 root root 6 4月 11 2018 gamesdrwxr-xr-x. 2 root root 6 4月 11 2018 includedrwxr-xr-x. 2 root root 6 4月 11 2018 libdrwxr-xr-x. 2 root root 6 4月 11 2018 lib64drwxr-xr-x. 2 root root 6 4月 11 2018 libexecdrwxr-xr-x. 2 root root 6 4月 11 2018 sbindrwxr-xr-x. 5 root root 49 3月 15 09:35 sharedrwxr-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总用量 69048drwxr-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.tgzdrwxr-xr-x. 2 root root 6 4月 11 2018 bindrwxr-xr-x. 2 root root 6 4月 11 2018 etcdrwxr-xr-x. 2 root root 6 4月 11 2018 gamesdrwxr-xr-x. 2 root root 6 4月 11 2018 includedrwxr-xr-x. 2 root root 6 4月 11 2018 libdrwxr-xr-x. 2 root root 6 4月 11 2018 lib64drwxr-xr-x. 2 root root 6 4月 11 2018 libexecdrwxr-xr-x. 2 root root 6 4月 11 2018 sbindrwxr-xr-x. 5 root root 49 3月 15 09:35 sharedrwxr-xr-x. 2 root root 6 4月 11 2018 src
(4)配置JMeter环境变量
在
/etc/profile
文件中,配置JMeter的环境变量。
配置内容如下:
# 配置到文件的最下方export JMETER_HOME=/usr/local/apache-jmeter-5.4.1export PATH=$PATH:${JMETER_HOME}/bin
如下图所示:
提示:
保存完之后,我们还需要让刚刚配置的环境变量生效,通过
source /etc/profile
命令,让系统重启加载
/etc/profile
文件中的内容,使其立即生效。当然也可以重启电脑生效。
(5)验证JMeter环境是否配置成功
执行命令:
jmeter -v
出现如下内容,说明JMeter环境配置成功了。
[root@localhost ~]# jmeter -v_ ____ _ ____ _ _ _____ _ __ __ _____ _____ _____ ____/ \\ | _ \\ / \\ / ___| | | | ____| | | \\/ | ____|_ _| ____| _ \\/ _ \\ | |_) / _ \\| | | |_| | _| _ | | |\\/| | _| | | | _| | |_) |/ ___ \\| __/ ___ \\ |___| _ | |___ | |_| | | | | |___ | | | |___| _ </_/ \\_\\_| /_/ \\_\\____|_| |_|_____| \\___/|_| |_|_____| |_| |_____|_| \\_\\ 5.4.1Copyright (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.jtlCreating summariser <summary>Created the tree successfully using CLI_test.jmxStarting standalone test @ Sun Jun 06 11:47:20 CST 2021 (1622951240796)Waiting for possible Shutdown/StopTestNow/HeapDump/ThreadDump message on port 4445summary + 101 in 00:02:09 = 0.8/s Avg: 64563 Min: 63303 Max: 64680 Err: 101 (100.00%) Active: 100 Started: 100 Finished: 0summary + 99 in 00:00:00 = 322.5/s Avg: 63416 Min: 63276 Max: 63535 Err: 99 (100.00%) Active: 0 Started: 100 Finished: 100summary = 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.jtlCreating summariser <summary>Created the tree successfully using /usr/local/apache-jmeter-5.4.1/bin/CLI_test.jmxStarting standalone test @ Sun Jun 06 11:50:28 CST 2021 (1622951428991)Waiting for possible Shutdown/StopTestNow/HeapDump/ThreadDump message on port 4445summary + 1 in 00:01:04 = 0.0/s Avg: 63262 Min: 63262 Max: 63262 Err: 1 (100.00%) Active: 100 Started: 100 Finished: 0summary + 199 in 00:01:04 = 3.1/s Avg: 63236 Min: 63011 Max: 63459 Err: 199 (100.00%) Active: 0 Started: 100 Finished: 100summary = 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脚本基本上是一样的。所以这里就不展开说明了。