渣渣简单jmeter操作

JMeter简介

Apache JMeter是Apache组织开发的基于Java的压力测试工具。用于对软件做压力测试,它最初被设计用于Web应用测试,但后来扩展到其他测试领域。

JMeter 可以用于对服务器、网络或对象模拟巨大的负载,来自不同压力类别下测试它们的强度和分析整体性能。另外,JMeter能够对应用程序做功能/回归测试,通过创建带有断言的脚本来验证你的程序返回了你期望的结果。为了最大限度的灵活性,JMeter允许使用正则表达式创建断言。

JMeter特点:

1.能够对HTTP和FTP服务器进行压力和性能测试, 也可以对任何数据库进行同样的测试(通过JDBC)。

2.完全的可移植性和100% 纯java。

3.完全 Swing 和轻量组件支持(预编译的JAR使用 javax.swing.*)包。

4.完全多线程 框架允许通过多个线程并发取样和 通过单独的线程组对不同的功能同时取样。

5.精心的GUI设计允许快速操作和更精确的计时。

6.缓存和离线分析/回放测试结果。

2JMeter安装

JMeter是完全java编写的一款开源性能测试工具,必须运行在java环境。所以,在安装JMeter环境前,必须安装java环境。

2.1 java环境安装

【步骤一安装jdk

1、下载jdk,到官网下载jdk,地址:http://www.oracle.com/technetwork/java/javase/downloads/index.html

2、安装jdk,下载完成后,双击安装

 

【步骤二】配置jdk环境变量

右键计算机属性->高级系统设置->系统属性->高级->环境变量->添加如下的系统变量:

变量名:【JAVA_HOME】

变量值:【jdk的安装路径】,例如D:\Program Files\Java\jdk1.8.0_92】

变量名:【path】

变量值:【;%JAVA_HOME%\bin;】

变量名:【CLASSPATH】

变量值:【.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;】【前面的点不能漏】

 

【步骤验证jdk安装成功

开始-cmd,打开命令提示符窗口,输入java -version,出现图1-1,输入javac,如图1-2表示成功。

 

 

 

 

2.2 JMeter安装

【步骤一】安装JMeter

1、下载JMeter,官网地址:http://jmeter.apache.org/download_jmeter.cgi

2、解压JMeter安装包

 

【步骤二】配置Jmeter环境变量

按下面变量名和变量值配置Jmeter系统环境变量:

变量名:【JMETER_HOME】

变量值:【JMeter解压路径】,例如【F:\test\jmeter\apache-jmeter-3.0】

变量名:【CLASSPATH】

变量值:【%JMETER_HOME%\lib\ext\ApacheJMeter_core.jar;%JMETER_HOME%\lib\jorphan.jar;%JMETER_HOME%\lib\logkit-2.0.jar;】

【步骤三】验证JMeter安装成功

jmeter.properties 修改中文

language=zh_CN

 进入jmeter安装路径下的bin目录,点击jmeter.bat

 

 

 

 

 

3.JMeter基本使用

3.1 GUI模式使用

Windows环境下,进入JMeter/bin目录,点击jmeter.bat启动JMeter。GUI页面如图

在测试计划右键-thread-线程组(thread),添加线程组后可在线程组下添加请求、监听器等。

添加线程组:

添加请求:

添加监听器:

其他jmeter元件不再一一讲述。需要时请自行查看。

3.2 GUI模式使用

使用非 GUI 模式,即命令行模式运行 JMeter 测试脚本能够大大缩减所需要的系统资源。但要在GUI模式下运行脚本,需提前在GUI 模式下调整好脚本后,通过命令行启动运行脚本:

jmeter -n -t <testplan filename> -l <listener filename>

各项参数:

-n:非GUI模式  

-t:需要执行的脚本文件名,如:XX.jmx

-l:保存监控结果的文件名,如:XX.jtl

JMeter插件jmeter-plugin

Jmeter可通过自带的plugin-perfmon工具监控被测服务器的CPU、内存等性能指标。安装和使用步骤如下:

步骤一】下载plugin插件

Jmeter-plugin下载地址:https://jmeter-plugins.org/downloads/all/,点击4-1图中圆圈里的:Previous ZIP Releases,下载同一个版本的extra、standard和serverAgent。

其中,extra和standard放到jmeter所在机器上,serverAgent放到被测服务器上。

extra和standard解压缩后把lib/ext下的jar包放到JMETER_HOME/lib/ext下。serverAgent在被测服务器上建个目录,解压即可。

 

 

步骤二】在被测服务器上启动serverAgent

被测服务器上,进入serverAgent所在目录,执行【nohup ./startAgent.sh &】启动serverAgent。如图

 

 

步骤三】在线程组添加perfmon监听器

启动jmeter,在线程组右键-监听器,添加jp@gc - PerfMon Metrics Collector。

点击Add Row,添加被监测服务器的IP和端口号就可以。端口默认是4444,如图

 

 

5 JMeter分布式

5.1 JMeter分布式原理

由于机器CPU和内存等资源有限,当一台压力机无法启动足够多的线程提供所需并发时,采用多台机器同时向被测服务器发起请求。

JMeter分布式,就是采用一台机器作为控制机(master),其他一台或多台机器为执行机(slave)master负责请求的分发,slave负责执行。

执行时,master会把脚本发送到每台slaver上,slaver 拿到脚本后就开始执行。执行完成后,slaver会把结果回传给master,master收集所有slaver的信息

并汇总。

5.2 如何使用JMeter分布式

这里以Windows机器做控制机(master),2台Linux机器做执行机(slave)为例。

【步骤一】配置执行机远程启动端口

打开slave机器的JMETER_HOME/bin/目录下的jmeter.properties文件,修改如下信息:

server_port=1099

server.rmi.localport=1099

【步骤二】配置控制机远程启动端口

打开master机器的JMETER_HOME/bin/目录下的jmeter.properties文件,修改如下信息:

remote_hosts=192.168.1.50:1099,192.168.1.51:1099(这里的IP要根据slave机器的真实IP修改,可仅添加一个,也可添加多个)

【步骤三】启动执行机上的jmeter-server

slave机器上,进入JMETER_HOME/bin/目录,启动jmeter-server。

图中箭头处显示slave机器的IP和步骤一配置的端口

 

【步骤四】控制机上启动jmeter,使用分布式

master机器上,启动jmeter,菜单栏-运行-远程启动,显示步骤二中配置的slave机器的IP和使用的端口号。选择要启动的slave机器,或者在菜单栏-运行-远程全部启动。

 

 

5.3 几个小tip

1. slave机器执行脚本时不需要启动GUI,如果引用到csv等外部的文件,则每台slaver所在的机器都需要相应位置放置该文件。

2. slave和master机器上的防火墙要关闭。

3. 只启动一个网卡,其他网卡都禁用。

 

posted @ 2021-01-08 16:04  北京测试菜鸟  阅读(158)  评论(0编辑  收藏  举报