JMeter压力测试之环境搭建、脚本调试及报错解决方法(Linux版)
2024-10-20 11:38:34
一、环境部署
后续往服务器上传文件,本文中使用的是xftp,因其不是本文所要讲述的重点,这里不做详解。
第一步:安装所需要版本的JDK,本次使用的是JDK 1.8
- 下载地址:http://www.oracle.com/technetwork/java/javase/downloads/index.html
- 历史版本下载地址:http://www.oracle.com/technetwork/java/javase/archive-139210.html
- 1、通过xftp把下载好的安装包上传到服务器,实际放置路径大家根据自己的需要选择
- 2.给安装包赋予运行权限,然后解压
赋予运行权限 chmod 755 jdk-xxxxx-linux-x64.tar.gz 然后 tar -zxvf jdk-xxxxx-linux-x64.tar.gz
名称 | 类型 |
---|---|
tar | 备份文件 |
-zxvf | |
-z | 通过gzip指令处理备份文件 |
-x | 从备份文件中还原文件 |
-v | 显示指令执行过程 |
-f | 指定备份文件 |
rm -rf jmeter/ | 删除 |
mv 登录.jmx script/ | 移动文件 |
cp -r tok1.csv csv/ | 复制文件 |
find -name jar包名称 | 搜索 |
chmod 777 jmeter | 赋予启动项权限 |
- 3.配置JDK环境变量
在命令行输入:vim /etc/profile 然后按 i 进入编辑模式,将以下内容粘贴到文本最后。
export JAVA_HOME=/usr/java/jdk1.8.0_144
export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:${JAVA_HOME}/bin
注意:JAVA_HOME=/usr/java/jdk1.8.0_144要更改成你自己的安装目录
- 4.在命令行输入 source /etc/profile 使刚刚设置的配置文件生效,接着命令行输入 java -version 检查安装结果。
[test@node06 ~]$ java -version
java version "1.8.0_144"
Java(TM) SE Runtime Environment (build 1.8.0_144-b01)
Java HotSpot(TM) 64-Bit Server VM (build 25.144-b01, mixed mode)
[test@node06 ~]$
第二步:安装所需要版本的Jmeter,本次使用的是Jmeter 3.1
- 1.下载Jmeter,地址:http://jmeter.apache.org/download_jmeter.cgi
- 2.通过xftp上传安装包到服务器对应目录,然后在命令行输入 tar zxvf apache-jmeter-3.1.tgz 进行解压。
- 3.进入bin目录下,在命令行输入 chmod 777 jmeter 赋予启动项权限。
- 4.在命令行输入 vim /etc/profile 配置环境变量,按 i 进入编辑模式,在文本最后粘贴以下内容:
export JMETER_HOME=/usr/local/jmeter/apache-jmeter-3.1
export CLASSPATH=$JMETER_HOME/lib/ext/ApacheJMeter_core.jar:$JMETER_HOME/lib/jorphan.jar:$CLASSPATH
export PATH=$JMETER_HOME/bin:$PATH:$HOME/bin
- 5.在命令行输入 source /etc/profile 使配置生效,接着输入 jmeter -v 查看安装结果。
第三步:配置Jmeter监控插件
使用jmeter做性能测试,添加插件是必不可少的,大家可以参考我之前一篇专门介绍jmeter插件的博文。
地址:https://www.cnblogs.com/Sweettesting/p/12780747.html
二、调试脚本
- 1.在GUI模式下,新建测试计划,然后根据要压测的实际需要添加各种配置元件,本次压测配置如下:
在GUI模式添加完组件后,一定要将脚本跑通,之后再上传到服务器。
- 2.使用xftp把脚本及读取文件上传到服务器,在脚本目录命令行输入 vim stresstest.jmx ,根据实际压测需要调整脚本线程和压
测时间,脚本文件的名称要更换成实际文件名称。由于运行时 View Results Tree 资源消耗比较大,这里对脚本做下优化,把状态改为false。
三、运行脚本
- 1.运行Jmeter服务器资源性能监控插件,在监控插件目录命令行输入 ./startAgent.sh
- 2.执行命令 jmeter -n -t stresstest.jmx -l /tmp/testResultOther.jtl跟stresstest.jmx :为测试脚本存放路径,/tmp/testResultOther.jtl :为测试结果输出路径
jmeter -n -t 提现.jmx -l test.jtl -e -o /usr/local/src/apache-jmeter-5.4.1/JB/log
解释:
执行提现.jmx脚本,
命令参数 | 命令释义 |
---|---|
-n | 设置命令行模式 |
-t | 指定jmx脚本路径。参数为:jmx脚本路径,若非当前目录需用全路径或相对路径 |
-l | 指定结果文件路径(jtl或者csv)。参数为:结果文件路径,路径不存在时会自动创建 |
-j | 指定执行日志路径。参数为:日志路径。路径不存在,不会自动创建,同时将日志输出至命令行控制台 |
-r | 指定分布式(远程)执行。服务器列表由JMETER_HOME\bin\jmeter.properties中的remote_hosts指定 |
-R | 指定远程(分布式)服务器列表。参数为:指定服务器列表,配置形势同remote_hosts |
-g | 指定测试结果文件路径。仅用于生成测试报表。参数为:CSV结果文件 |
-e | 设置测试完成后生成测试报表 |
-o | 指定测试报表生成文件夹。文件夹必须为空或不存在。参数为:报表文件夹路径。可指定生成测试报告路径,比如:-e -o /usr/local/src/apache-jmeter-5.4.1/JB/log |
-H | 指定代理服务器域名或代理服务器IP。参数为:代理服务器域名或代理服务器IP |
-P | 指定代理服务器端口号。参数为:代理服务器端口号 |
- 3.把结果文件通过xftp下载到本地,通过GUI模式可以查看测试详情。
四、可能出现问题及解决方法
- 1.提示:-bash: /usr/local/jmeter/apache-jmeter-3.1/bin/jmeter: Permission denied说明需要赋予对jmeter的操作权限,命令行输入命令chmod777/usr/Jmeter/apachejmeter3.1/bin/jmeter
- 2.提示: -bash: jmeter: command not found
很大可能是环境变量配置的有问题,检查变量配置文件中名称、路径配置是否正确。
最新文章
- 我的MYSQL学习心得(一) 简单语法
- java 反射的应用 以及通过反射 用到的工厂模式
- JavaScript使用正则表达
- 注释(Annotation)
- 你缺什么(codevs 2928)
- 处理返回结果(XML)
- 【Xamarin报错】AndroidManifest.xml : warning XA0101: @(Content) build action is not supported
- Java定时任务Timer、TimerTask与ScheduledThreadPoolExecutor详解
- seaJs初体验
- 雪碧图(sprite)
- Mysql主从配置+读写分离(转)
- SSM框架中常用的注解
- 网站静态化处理—web前端优化—上(11)
- 记自己在spring中使用redis遇到的两个坑
- 常见的CSS
- pycharm汉化补丁
- win10 下安装 neo4j(转)
- Mybatis级联,使用JOIN和Associa,以及一些ID覆盖和自动变换。
- (最小生成树 次小生成树)The Unique MST -- POJ -- 1679
- HDFS命令实现分析
热门文章
- XCTF-web新手区
- Springboot+Dplayer+RabbitMQ实现视频弹幕延时入库
- (补12月19)ORM查询优化、ORM事物操作、ORM常用字段参数、Ajax请求、Content-Type
- 微信公众号签名错误(invalid signature)的问题排查
- 完整工作流整合方案,自定义配置,Java+Vue+Activiti@附配套文档
- 不像JVM的JVM
- C++_bind用法
- redis未授权访问漏洞——简单记录
- Excel操作技巧
- .bash_profile等配置文件