在Linux系统中搭建JMeter压力测试环境

发表于:2022-8-09 09:44

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:Edisonyao    来源:博客园

  概述
  JMeter最早是为了测试Tomcat的前身JServ的执行效率而诞生的。到目前为止,它的测试能力也不再仅仅只局限于对于Web服务器的测试,而是涵盖了数据库、JMS、Web Service、LDAP等多种对象的测试能力。
  本篇文章,我们就以3.1版本的JMeter讲一下压力测试
  环境部署
  后续往服务器上传文件,本文中使用的是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  指定备份文件
  jdk-xxxxx-linux-x64.tar.gz  文件名
  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做性能测试,添加插件是必不可少的,大家可以搜一下教程。
  调试脚本
  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 :为测试结果输出路径。
  这里是我手动结束了脚本运行,正常运行结束会提示:... end of run。
  3.把结果文件通过xftp下载到本地,通过GUI模式可以查看测试详情。
  可能出现问题及解决方法
  1.提示:-bash: /usr/local/jmeter/apache-jmeter-3.1/bin/jmeter: Permission denied。
  说明需要赋予对jmeter的操作权限,命令行输入命令:chmod 777 /usr/Jmeter/apache-jmeter-3.1/bin/jmeter。
  2.提示:-bash: jmeter: command not found。
  很大可能是环境变量配置的有问题,检查变量配置文件中名称、路径配置是否正确。
  本文内容不用于商业目的,如涉及知识产权问题,请权利人联系51Testing小编(021-64471599-8017),我们将立即处理
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号