软件测试工具之JMeter教程

扼要:

1、了解JMeter的界面操作;

2、用JMeter进行接口测试;

3、用JMeter进行html/htmls协议、websocket协议的压测;


JMeter是Apache应用程序,是开源软件,100%纯Java语言编写,可用于模拟服务器、服务器组、 络或者对象上的重负载,以测试其强度或者分析不同负载类型下的整体性能,即用途:测量性能。

JMeter测试对象

JMeter能够加载和性能测试许多不同的应用程序/服务器/协议类型:

1、web应用或者协议:HTTP,HTTPS(Java,NodeJS,PHP,ASP.NET等);

2、SOAP / REST Web服务;

3、FTP;

4、通过JDBC的数据库;

5、邮件-SMTP(S),POP3(S)和IMAP(S);

6、TCP协议;

7、Websocket协议等等。

JMeter安装

1、安装jdk,下载地址:https://www.oracle.com/java/technologies/javase-downloads.html

2、安装JMeter,下载地址:https://jmeter.apache.org/download_jmeter.cgi

下载后,解压即可。

备注:目前JMeter最新版本为: 5.4.1,其需要Java 8+(JDK 8)

JMeter在windows系统的操作

1、在JMeter解压后的文件夹中,找到bin目录,点击jmeter.bat即可启动Jmeter;

2、下面操作例子为手机 码归属地查询;

2.1、免费获取的API地址:https://api.ioser.net/

2.1、手机 码查询API:https://api.ioser.net/phone

操作录屏:

JMeter简单操作

操作细分:

1) 在空白的测试计划中,创建线程组;

2) 在线程组中,添加http请求;

3) http请求界面中,添加相应的配置,如下图所示:

JMeter界面说明

1) 添加监听器,本次添加“察看结果树”,主要查看运行结果是否正确。

3、进行压测

3.1、设置线程组的配置:

线程组设置

3.2、设置分布压测

分布压测:一个控制器节点和多个工作节点;

通常一个控制器节点(运行JMeter GUI[控制测试]的系统),安装在windows上,工作节点则安装linux上,并采用CLI模式运行脚本;

备注:控制器节点的机器和工作节点的机器都应该在同一 段;

A、修改工作节点机器的jmeter.properties:

server_port=1234(自定义端口 ,避免被占用)

server.rmi.localport=1234(跟上面设置的端口 一致)

server.rmi.ssl.disable=true

B、修改工作节点机器的jmeter-server:

RMI_HOST_DEF=-Djava.rmi.server.hostname=192.168.50.57(绑定本机ip)

C、 启动工作节点机器上jmeter bin目录下的jmeter-server(jmeter-server.bat for windows),记录ip和port

D、修改控制器节点的机器jmeter.properties:

server.rmi.ssl.disable=true

remote_hosts=192.168.50.57:1234(与工作节点机器上配置的ip、port对应)

备注:若有多个工作节点机器,使用逗 分隔多个ip、port,如remote_hosts=ip1:port1,ip2:port2

E、在控制器节点的机器上,打开测试脚本,启动–>远程启动slave机,可以启动单个工作节点机器或全部启动。

JMeter命令执行脚本

命令执行脚本,可以节约系统资源、便捷快速。

1、一般性执行测试脚本

jmeter -n -t HTTP请求.jmx

2、指定结果文件和日志

jmeter -n -t HTTP请求.jmx -l D:JMeterTestreportresult.csv -j D:JMeterTestreportlog.log

3、工作节点机器上执行脚本

jmeter -n -t D:JMeterTestHTTP请求.jmx -R 192.168.50.57:1234 -l D:JMeterTestreport 1-result.jtl -j D:JMeterTestreport 1-log.log

JMeter压测websocket协议

1、访问https://jmeter-plugins.org/get/ 获取jmeter插件管理器的jar包(jmeter-plugins-manager-1.3.jar);

2、将
jmeter-plugins-manager-1.3.jar包放入 jmeter的 lib/ext目录,重启jmeter;

3、添加插件,在工具栏>>>>Options>>>Plugins Manager>>>Available Plugins中搜索”WEBSOCKET” ,使用的”WebSocket Sampler by Maciej Zaleski”,勾选并点击下面的Apply and restart jmeter,安装成功后,会自动重启;

4、创建websocket协议

websocket协议界面

4.1、 Server Name or IP:不需要再添加“ws”;Port Number:端口默认为80;

4.2、关联数据处理

后置处理json格式的数据,即当前的接口返回的数据中在后面的接口中用到,且每次请求后的数据是动态的。

方法处理:后置处理器–>json提取器

根据json路径来提取:$.data.auth.token 或者$.data.auth[0].token

4.3、参数化

参数化的名称格式:${token},其中token为通过json提取器保存的数据名称;

JMeter其他用途

1、可以进行大量造数据;

2、可以进行单个接口的测试,同时测试单个接口的性能情况;

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2021年2月25日
下一篇 2021年2月26日

相关推荐