jmeter性能测试
jmeter性能测试
1.jmeter中文配置
jmeter的bin目下打开这个文件jmeter.properties,查找language,把这个属性前面的#去掉并修改值为:zh_CN,修改后的显示 language=zh_CN
# 修改内存大小
找到apache-jmeter-4.0\bin\jmeter.bat文件
把set HEAP=-Xms1g -Xmx1g -XX:MaxMetaspaceSize=256m
修改为set HEAP=-Xms256m -Xmx256m -XX:MaxMetaspaceSize=256m
2.运行,添加配置
(1.)打开bin目录,点击jmeter.bat 或cmd 输入 jmeter启动jmeter工具
(2.)选中测试计划右键new(添加)---》线程(用户)----》线程组,进行线程组的添加
(3.) 选中线程组右键---》取样器---》http请求
(4.) 选中线程组右键--添加--配置元件--http信息头管理器
(5.)选中线程组右键--添加--监听器---察看结果树
(6.)选中线程组右键---监听器--聚合报告
(7.)选中线程组右键---监听器--图形结果
3. jmeter生成性能报告
jmeter -n -t E:\jmscript\kafkaProduct.jmx -l E:\Report\kafkaProduct.jtl -e -o E:\Report
参数说明:
①.-n:非GUI形式运行Jmeter
②.-t:运行的jmeter脚本路径
③.-l:运行结果保存的路径(这个文件不能是存在的,自动创建生成的)
④.-e:脚本跑完后生成性能测试的html形式的报告
⑤.-o:存放测试报告的路径(可不创建它自动会生成)
4.jmeter监控CPU内存
(1.) 下载jmeter管理插件,放到 {jmeter安装路径}/lib/ext 路径,通过管理插件,安装其他插件
https://jmeter-plugins.org/install/Install/
(2.) 或者手动下载 JMeterPlugins-Standard和JMeterPlugins-Extras 这两个jmeter插件
https://jmeter-plugins.org/downloads/old/
进入其路径JMeterPlugins-Extras\lib\ext,JMeterPlugins-Standard\lib\ext,复制JmeterPlugins-Extras.jar,JmeterPlugins-Standard.jar两个文件,放到JMeter客户端的apache-jmeter-4.0\lib\ext下面 。 打开JMeter,可在监听器中看到Permon Metrics Collector,客户端配置成功
(3.)下载ServerAgent,并在服务端解压启动
将ServerAgent-2.2.1.jar上传到被测服务器(根目录或任意位置),解压,进入目录,Windows环境,双击startAgent.bat启动;linux环境执行startAgent.sh启动,默认使用4444端口(如果没有执行权限,可先赋予执行权限:chmod a+x startAgent.sh)
https://github.com/undera/perfmon-agent
# 使用命令改变ServerAgent服务的默认端口:
./startAgent.sh -udp-port 0 -tcp-port xxxx (xxxx为新端口号)
(4.) 在Jmeter脚本的线程组中添加一个监听器jp@gc - PerfMon Metrics Collector
注意:一定要添加要监控的服务器的IP,serveragent的4444端口号,监控的指标CPU、Memory、DISK I/O,Network I/O。一定要有将结果导出的文件,如果添加文件时提示:Error loading results file - see file log,解决办法为在,在文件(什么类型都可以)中加上一段
<?xml version="1.0" encoding="UTF-8"?>
<testResults version="1.2">
</testResults>
其他并发测试工具
go-wrk.exe -c=400 -t=8 -n=10000 "http://19.168.1.10:2001/"
-H="User-Agent: go-wrk 0.1 bechmark\nContent-Type: text/html;": the http headers sent separated by '\n'
-c=100: the max numbers of connections used
-k=true: if keep-alives are disabled
-i=false: if TLS security checks are disabled
-m="GET": the http request method
-n=1000: the total number of calls processed
-t=1: the numbers of threads used
-b="" the http request body
-s="" if specified, it counts how often the searched string s is contained in the responses
相关链接
https://zhuanlan.zhihu.com/p/113194630
https://zhuanlan.zhihu.com/p/26667352