中堂镇做网站,h5制作微信小程序,邢台手机网站制作,可以做空股票的网站『Jmeter入门万字长文』 | 从环境搭建、脚本设计、执行步骤到生成监控报告完整过程 1 Jmeter安装1.1 下载安装1.2 Jmeter汉化1.2.1 临时修改1.2.2 永久修改 1.3 验证环境 2 测试对象2.1 测试对象说明2.2 测试对象安装2.2.1 下载安装2.2.2 启动测试对象服务2.2.3 访问测试对象2.… 『Jmeter入门万字长文』 | 从环境搭建、脚本设计、执行步骤到生成监控报告完整过程 1 Jmeter安装1.1 下载安装1.2 Jmeter汉化1.2.1 临时修改1.2.2 永久修改 1.3 验证环境 2 测试对象2.1 测试对象说明2.2 测试对象安装2.2.1 下载安装2.2.2 启动测试对象服务2.2.3 访问测试对象2.2.4 注意事项2.2.5 其他参数2.2.6 网页登录数据库2.2.7 命令行连接数据库 3 明确测试目标3.1 测试接口3.2 测试数据3.3 测试目标 4 Jmeter脚本设计4.1 启动Jmeter4.2 添加http信息头管理器4.3 添加http请求默认值4.4 添加线程组4.5 添加http请求4.6 添加查看结果树4.7 运行调试 5 客户端安装jmeter-plugins-manager插件5.1 下载jmeter-plugins-manager插件5.2 jmeter-plugins-manager包配置5.3 下载PerfMon插件并应用5.4 添加PerfMon监听器 6 服务端配置ServerAgent6.1 下载ServerAgent6.2 配置ServerAgent 7 测试服务是否OK8 Jmeter配置监控指标9 GUI方式运行10 非GUI运行10.1 安装jmeter-plugins-cmd插件10.2 命令行启动性能脚本10.3 查看报告10.4 命令行生成监控图片10.5 命令行生成csv文件 『授人以鱼不如授人以渔』
仅以此文赠送那些需要学习Jmeter入门的伙伴。
仅供学习和参考转载请注明出处。
文章通俗易懂虽然很长但是一篇文章可帮大家快速了解Jmeter性能测试过程。
欢迎小伙伴阅读、指正和交流。 特别说明 1、本文是一个Jmeter快速入门的一个完整过程 2、可帮助快速了解Jmeter性能测试过程和Jmeter简单操作 3、文中通过一个简单的实例把Jmeter从安装、汉化到基本操作进行了贯穿仅作为学习参考。 1 Jmeter安装
1.1 下载安装
详细参考Jmeter安装配置详细教程简单总结下 1、下载官网Jmeter下载地址 2、选择对应的版本 3、安装JDK环境 4、JDK环境变量配置 5、Jmeter环境配置。 1.2 Jmeter汉化
1.2.1 临时修改
即设置后只对本次使用有效重启后恢复默认语言。选择Options—Choose Language—选择其他语言例如ChineseSimplified简体中文设置成功。重启Jmeter又会恢复英文。
1.2.2 永久修改
即永久性设置设置后每次打开显示的语言都是一样的进入到Jmeter的bin目录下找到jmeter.properties文档以记事本的方式打开查找language找到languageen的行 如下图将en改为cn并且去掉前面的#号保存退出重启jmeter语言设置成功。
1.3 验证环境
命令行输入jmeter出现以下内容表示OK
2 测试对象
2.1 测试对象说明
为了清晰的了解整个测试过程我们使用禅道开源版作为测试对象后续会对其中的一两个接口使用Jmeter进行测试Jmeter安装环境为Windows测试对象禅道安装在ubuntu下。
2.2 测试对象安装
2.2.1 下载安装
下载地址禅道官网找到Linux一键安装包 点击下载后使用xftp上传到ubuntu上 把上传到ubuntu上的禅道安装包复制到/opt目录下
sudo cp ZenTaoPMS-18.8-zbox_amd64.tar.gz /opt/将安装包直接解压到/opt目录下
sudo tar -zxvf ZenTaoPMS-18.8-zbox_amd64.tar.gz 2.2.2 启动测试对象服务 禅道服务包括Apache和Mysql启动命令如下。 启动所有服务/opt/zbox/zbox start 停止所有服务/opt/zbox/zbox stop重启所有服务/opt/zbox/zbox restart开机自动启动以把 /opt/zbox/zbox restart 加到操作系统的自启目录。
2.2.3 访问测试对象
禅道安装完并启动服务后直接浏览器输入
http://禅道服务器ip:apache端口。特别注意这里需要开放几个端口 1、sudo ufw status查看开放的端口 2、开放需要的端口sudo ufw allow 端口 2.2.4 注意事项
如果网页无法访问请先关闭禅道所在电脑的防火墙和selinux再刷新网页访问试一下使用云服务器请注意在安全组中开放apache使用端口禅道默认管理员帐号是 admin密码 123456;初次登陆请修改密码
2.2.5 其他参数
如果不加任何参数执行 /opt/zbox/zbox 会打印输出命令可用参数
Usage: ./zbox {start|stop|status} [--aport8080] [--mport3307]--aport参数 可以修改Apache的端口
--mport参数 可以修改Mysql的端口2.2.6 网页登录数据库
禅道数据库管理用的是adminer但是为了安全访问adminer的时候需要身份验证需要运行 sudo /opt/zbox/auth/adduser.sh来添加用户如下命令
# 进入脚本目录
cd /opt/zbox/auth# 执行添加用户的脚本
bash adduser.sh
This tool is used to add user to access adminer
Account: admin # 输入用户名
Password: # 输入密码
Adding password for user admin 打开浏览器输入 http://禅道服务的ip:apache端口 点击“数据库管理” 输入用户名和密码 网页直接显示登录界面 1、系 统默认选择MySQL。 2、服务器127.0.0.1:MySQL端口 MySQL端口启用的是3306那么就填写127.0.0.1:3306。 注意ip只能写127.0.0.1 3、用户名root禅道默认的数据库用户名是root 密 码123456禅道默认的数据库密码是123456 数据库zentao。 登陆成功如下
2.2.7 命令行连接数据库
登录数据库/opt/zbox/bin/mysql -u root -P MySQL端口 -p 如/opt/zbox/bin/mysql -u root -P 3306 -p导入数据库 /opt/zbox/bin/mysql -u root -P MySQL端口 -p 要导入的库名 XXXX.sql 如/opt/zbox/bin/mysql -u root -P 3306 -p zentao zentao.sql
3 明确测试目标
3.1 测试接口
登陆禅道后点击更多-后台-二次开发 可以看到接口信息我们这里简单就拿token来验证
3.2 测试数据
将以下数据中的地址、用户名等参数改为自己的即可
# 请求地址
http://172.18.126.87:80/zentao/api.php/v1/tokens# 请求方式
POST# 请求参数
{account: admin, password: Kenwaytest123456}3.3 测试目标
使用登陆接口对登陆接口进行压测并发20持续时间为5分钟。
4 Jmeter脚本设计
4.1 启动Jmeter
cmd命令行输入jmeter即可打开图形化界面
4.2 添加http信息头管理器
测试计划-右键-添加-配置元件-HTTP信息头管理器如下 参数设置如下
4.3 添加http请求默认值
测试计划-右键-添加-配置元件-HTTP请求默认值如下 设置参数如下
4.4 添加线程组
测试计划-右键-添加-线程用户-线程组如下 设置参数如下
4.5 添加http请求
线程组-右键-添加-取样器-http请求如下 设置参数如下
4.6 添加查看结果树
测试计划-右键-添加-监听器-查看结果树如下
4.7 运行调试
点击运行按钮查看返回数据是否ok如下 如果返回如下token值则说明说有设置是ok的
5 客户端安装jmeter-plugins-manager插件
我们需要关注被压测服务器的cpu、内存、磁盘、网络等指标参数的浮动来衡量压测服务器的能力可以通过在jmeter客户端集成jmeter-plugins-manager插件在服务端部署插件serverAgent来实时监控被压测服务器的性能
5.1 下载jmeter-plugins-manager插件
下载插件管理包地址插件包管理地址
5.2 jmeter-plugins-manager包配置
将下载的jar包添加到Jmeter中即将其放置到jmeter的安装目录lib\ext下
5.3 下载PerfMon插件并应用
重启Jmeter点击选项-插件管理器 PerfMon(Servers Performance Monitoring)选项点击右下角的Apply Changes and Restart JMeter按钮应用
5.4 添加PerfMon监听器
测试计划-右键-添加-监听器-jpgc-PerfMon Metrics Collector,如下
6 服务端配置ServerAgent 对linux服务器的服务进行压测时服务器的运行情况可以通过添加插件serverAgent来观察,可以实时监控性能指标。 6.1 下载ServerAgent
下载ServerAgent-2.2.3.zip下载官网地址
6.2 配置ServerAgent 下载后上传到ubuntu上比如目录soft下 解压缩sudo unzip ServerAgent-2.2.3.zip 进入到解压目录ServerAgent-2.2.3下直接运行./startAgent.sh 启动 特别注意 1、默认启动端口为4444 2、也可以使用命令指定端口启动例如将指定TCP为5678UDP指定为6789./startAgent.sh --tcp-port 5678--udp-port 6789--sysinfo 3、建议将此脚本写成shell脚本授权chmod -R 777 XXX 之后下次直接启动脚本程序。 运行./startAgent.sh 提示没有java环境这个需要jre1.8以上版本 输入java按照提示的安装包进行安装即可 启动服务
7 测试服务是否OK
Windows下cmd执行以下命令检查ServerAgent代理端口
telnet 172.18.126.87 4444如果进入以下界面说明4444端口是被开放的 如果提示无法连接到4444端口需要在ubuntu上开放4444端口
sudo ufw allow 44448 Jmeter配置监控指标
在jpgc-PerfMon Metrics Collector上进行指标选择点击AddRow然后在host的地方添加需要监控的服务器的主机域名或者IPport填写端口Metric to collect下拉选择监控的指标CPU、Memory、Swap、Disks I/O、Network I/O等 运行时如果报错ERROR: java.net.ConnectException: Connection refused: connect需要检查端口ip是否正确另外设置本地防火墙策略参考Jmeter监控服务器资源报错问题ERROR
9 GUI方式运行
直接运行脚本可以看到如下监控数据
10 非GUI运行
性能测试时建议使用这种方式可以提升性能这种方法运行时将监控数据输出到指定文件文件必修是.jtl结尾
10.1 安装jmeter-plugins-cmd插件
在插件管理器中勾选如图即可
10.2 命令行启动性能脚本
创建报告存放路径比如D:\A_jmeter_test\report创建压测数据存放路径比如D:\A_jmeter_test\jtl脚本存放路径比如D:\A_jmeter_test\登陆.jmx命令行执行脚本命令为
jmeter -n -t 脚本路径 -l jtl数据文件路径 -e -o 测试报告存放路径比如
jmeter -n -t D:\A_jmeter_test\登陆.jmx -l D:\A_jmeter_test\jtl\登陆.jtl -e -o D:\A_jmeter_test\report\命令行运行以上命令如下
10.3 查看报告
打开报告存放路径比如D:\A_jmeter_test\report 运行index.html如下
10.4 命令行生成监控图片
新建存放图片的路径比如D:\A_jmeter_test\picture命令行先执行JMeterPluginsCMD.bat看下这个命令有没有问题 发现这个文件找不到我们看下图片中的D:\apache-jmeter-5.3\bin\\..\lib\cmdrunner-2.2.jar中的文件是否存在 结果发现是cmdrunner-2.3.jar而不是cmdrunner-2.2.jar则需要修改JMeterPluginsCMD.bat文件而JMeterPluginsCMD.bat文件在D:\apache-jmeter-5.3\bin目录下 完整的执行命令如下
JMeterPluginsCMD.bat --generate-png 存放图片的路径 --input-jtl jtl数据文件路径 --plugin-type PerfMon --width 图片宽度 --height 图片高度示例如下
JMeterPluginsCMD.bat --generate-png D:\A_jmeter_test\picture\登陆.png --input-jtl D:\A_jmeter_test\jtl\登陆.jtl --plugin-type PerfMon --width 800 --height 600生成的图片如下
10.5 命令行生成csv文件
创建csv文件存放路径比如D:\A_jmeter_test\csv执行的命令为
JMeterPluginsCMD.bat --tool Reporter --generate-csv 存放csv路径 --input-jtl 存放jtl数据文件路径 --plugin-type PerfMon示例如下
JMeterPluginsCMD.bat --tool Reporter --generate-csv D:\A_jmeter_test\csv\登陆.csv --input-jtl D:\A_jmeter_test\jtl\登陆.jtl --plugin-type PerfMon