一、环境部署

后续往服务器上传文件,本文中使用的是xftp,因其不是本文所要讲述的重点,这里不做详解。

第一步:安装所需要版本的JDK,本次使用的是JDK 1.8


  • 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


  • 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.jtlstresstest.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

    很大可能是环境变量配置的有问题,检查变量配置文件中名称、路径配置是否正确。

JMeter压力测试之环境搭建、脚本调试及报错解决方法(Linux版)的更多相关文章

  1. 【jmeter】NO-GUI模式运行的过程及报错解决方法(转)

    1.什么都不需要设置(若非得想配置点什么的话,那请看备注) 2.将脚本抛到Linux里 3.执行 jmeter -n -t /opt/day7_buildbug.jmx -l result.jtl - ...

  2. 搭建lamp或者lnmp环境,本地链接mysql报错解决方法

    报错:1130-host...is not allowed to connect to this mysql server 解决方法: 1.改表法 可能是你的账号不允许从远程登录,这个时候只要进入服务 ...

  3. VS本地调试oracle报错解决方法

    同事的项目,SVN下载下来以后一直报错,后来确认一下 1本地要安装oracle 2代码用的是64位的,所以本地安装也要64位的oracle 3VS调试用的IIS Express也要是64位的,激活方法 ...

  4. JMeter打开jmx文件报错解决方法

    错误提示: Error Problem loading XMLfrom:'D:\software\apace-jmeter-3.3\bin\线程组jmx', missing class com.tho ...

  5. Appium环境搭建说明(包括报错处理)

    Appium环境搭建说明 一.环境配置 前提是windows系统已安装以下软件: 1.jdk 我装的是1.8.0 2.android-sdk 3.python,3.4-3.6 5.Node.js,v8 ...

  6. 一次使用innobackupex重新搭建主从复制报错解决方法及注意事项

    [环境介绍] 系统环境:CentOS release 6.4 (Final) + Server version: 5.7.18-log MySQL Community Server (GPL) + i ...

  7. 【亲测可行】Dev c++调试、运行报错解决方法总结

    一.编译后  0错误 0警告,但是开始出现‘‘停止运行’’或者进行输入时出现‘‘停止运行’’ 可能的原因: 结构体指针为空,但调用了其成员. 有些scanf语句中忘记添加取址符. 无法跳出递归. 二. ...

  8. Play! 1.x Eclipse Debug调试报错解决方法记录

    使用Play eclipsify xxxx[项目路径],可以把play new xxxx[项目路径]创建的工程生成为Eclipse的项目 但是在Debug AS 调试的时候,会报以下错误 Error ...

  9. linux启动jmeter,执行./jmeter.sh报错解决方法

    1.l-bash: ./jmeter.sh: Permission denied解决办法:jmeter.sh的执行权限改改,是权限不够chmod 777 jmeter.sh 2.An error oc ...

  10. linux启动jmeter(二十三),执行./jmeter.sh报错解决方法(转载)

    转载自 http://www.cnblogs.com/yangxia-test 1.l-bash: ./jmeter.sh: Permission denied解决办法:jmeter.sh的执行权限改 ...

随机推荐

  1. 数据库实践丨使用MTK迁移Mysql源库后主键自增列导致数据无法插入问题

    摘要:用户使用Mogdb 2.0.1版本进行业务上线测试,发现在插入数据时,应用日志中提示primary key冲突,用户自查业务SQL没有问题,接到通知后,招手处理故障. 本文分享自华为云社区< ...

  2. 推荐一款在浏览器编辑`Blazor`的`IDE`

    不知道是否有Blazor用户羡慕过React或者Vue用户,在一些组件库中,它们就提供了在当前的组件预览对于组件的实时编辑并且预览? 比如semi-design的这种 在比如codepen这种 由于B ...

  3. 【Azure Cache for Redis】Python Djange-Redis连接Azure Redis服务遇上(104, 'Connection reset by peer')

    问题描述 使用Python连接Azure Redis服务,因为在代码中使用的是Djange-redis组件,所以通过如下的配置连接到Azure Redis服务: CACHES = { "de ...

  4. python自动发布-优化版本

    import sys import time import os import paramiko from pygments.lexers import shell baseconfig = { &q ...

  5. 重新思考 Vue 组件的定义

    重新总结组件的定义 这是官方对组件的定义:组件允许我们将 UI 划分为独立的.可重用的部分,并且可以对每个部分进行单独的思考.在实际应用中,组件常常被组织成层层嵌套的树状结构. 对于 Vue 开发经验 ...

  6. ICSharpCode.SharpZipLib.Zip 解析时报错System.NotSupportedException: No data is available for encoding 936

    分析原因 利用ICSharpCode.SharpZipLib.Zip进行APK解析时,因为APK内编译的名称为中文,查询微软开发文档936为gb2312中文编码 微软开发文档地址https://doc ...

  7. JavaScript 日期和时间的格式化

    一.日期和时间的格式化 1.原生方法 1.1.使用 toLocaleString 方法 Date 对象有一个 toLocaleString 方法,该方法可以根据本地时间和地区设置格式化日期时间.例如: ...

  8. 《深入理解java虚拟机》第七章读书笔记——虚拟机类加载机制

    系列文章目录和关于我 一丶虚拟机类加载机制是什么 java虚拟机将描述类的数据从class文件加载到内存,并对数据进行校验,转换解析和初始化,最终形成可用被虚拟机直接使用的java类型. 二丶类加载时 ...

  9. flutter系列之:在flutter中使用导航Navigator

    目录 简介 flutter中的Navigator Navigator的使用 总结 简介 一个APP如果没有页面跳转那么是没有灵魂的,页面跳转的一个常用说法就是Navigator,flutter作为一个 ...

  10. Redis 源码解读之逐出策略

    Redis 源码解读之逐出策略 背景和问题 本文想解决的问题: redis 触发逐出的时机是怎样的? redis 逐出策略有哪些? 如何在海量的 key 中快速找到逐出评价值(idle)最高的key, ...