首页 > 其他分享 >JMeter工具使用说明

JMeter工具使用说明

时间:2022-11-26 20:00:49浏览次数:78  
标签:--- HTTP 请求 录制 说明 线程 工具 JMeter

一、JMeter 简介

        JMeter 是 apache 公司基于 java 开发的一款开源压力测试工具,体积小,功能全,使用方便,是一个比较轻量级的测试工具,使用起来非常简单。因为JMeter是 java 开发的,所以运行的时候必须先要安装 jdk 才可以。jMeter 是免安装的,拿到安装包之后直接解压就可以使用,同时它在 linux/windows/macos 上都可以使用。
  JMeter可以做接口测试和压力测试。其中接口测试的简单操作包括做 http 脚本(发 get/post 请求、加 cookie、加 header、加权 限认证、上传文件)、做 webservice 脚本、参数化、断言、关联(正则表达式提取器和处理 json-json path extractor)和 JMeter 操作数据库等等。

二、JMeter安装

        步骤一:先检查机器上是否有安装JDK,检查方式,打开cmd,然后输入java -version,如果展示jdk版本,则已安装,注意,需要安装jdk1.8以上。如果提示没找到java命令,请自行安装jdk。

        步骤二:安装JMeter

                1)打开链接Apache JMeter的官网下载地址(https://dlcdn.apache.org//jmeter/binaries/apache-jmeter-5.4.3.zip

                2)解压JMeter安装包

                3)启动JMeter,JMeter安装目录/bin/jmeter.bat,启动后会打开JMeter UI。

三、JMeter用法

 1. 手动添加Request

 1.1 创建线程组(在此之前可以在Options里面修改语言)

点击Test Plan,右键->添加>线程(用户)>线程组。 

 根据情况配置线程组参数, 这里可以定义线程组的名称,执行规则,如果需要做压力测试,可以修改线程数(并发数),Ramp-Up时间(多长时间内启动线程),循环次数(循环执行次数),调度器持续时间(执行多长时间后停止、启动延迟)。

 1.2 创建Http请求,Http请求是用来请求后台的web服务,类似于模拟浏览器调用,相当于postman

选择线程组 ---> 右键--->添加--->取样器---->HTTP请求

 

 

 配置HTTP请求,配置名称/协议/服务器名称或IP,配置HTTP请求方式及路径,请求体,(端口根据情况配置)

 

 

 1.3 创建HTTP信息头管理器 

HTTP请求-->右键--->添加--->配置元件--->选择(HTTP信息头管理器) 

 

 配置HTTP信息头管理器,这里可以从Fiddler或者浏览器里面抓真实请求的头部信息,Copy之后,点击“从剪贴板添加”,就可以一步填充好。

 

 1.4 设置HTTP Cookie Manager ,此步骤同1.3创建即可

 配置HTTP信息头管理器,这里可以从Fiddler或者浏览器里面抓真实请求的头部信息,Copy之后,点击“从剪贴板添加”,就可以一步填充好。

 

  1.5 添加运行结果查看器,这里选择“察看结果树”和“汇总报告”

点击线程组--->右键--->添加--->监听器--->察看结果树/汇总报告,点击绿色的右侧小三角,运行后,就可以看到执行结果了。

 

 

2.  录制请求

 JMeter的一个很好的功能,就是我们可以通过浏览器录制脚本,即我们配置好代理服务器后,可以在浏览器上操作,发起的请求会通过代理服务器存储到JMeter,这样就省去了手工去拼凑请求数据,设置请求信息,可以大大的提升写脚本的效率。录制好的脚本,可以保存为模板,在每次系统发布之后直接回放,可以高效的验证系统的功能是否完好。下面说一下如何去录制请求脚本。

        1)创建一个Thread Group  (右键点击: Test Plan   -> Add -> Thread Group)

        2)创建http 代理服务器 (右键点击"工作台",   Add-> Non-Test Elements -> HTTP(S) Test Script Recorder)。这里的Target Controller选择第一步建好的Thread Group。在Requests Filtering Tab页里面添加需要过滤的URL,因为正常的web录制,会有很多的js、html、css等干扰请求,这里我们写了个匹配规则,将这些干扰请求过滤掉 (?i).*\.(bmp|css|js|gif|ico|jpe?g|png|swf|woff|xml).*|

 3)配置HTTP代理服务器,这里的端口号8888,需要跟后续配置浏览器代理IP的端口号保持一致。 

  4)设置浏览器代理和安装证书

   a) 这里推荐使用firefox进行录制,因为chrome的证书会有一些意想不到的问题,firefox的配置会比较简单。打开火狐的设置,在常规中找到网络设置

 参照下图设置代理服务器为本地。点击确定

   b) 导入证书。同样在Firefox设置界面的隐私与安全下面有个查看证书,打开后点导入,选择JMeter安装目录下面的bin文件夹,里面有个ApacheJMeterTemporaryRootCA.crt(如果没有找到,可以先在JMeter的代理服务器那里点Start,然后弹出的证书信息哪里点ok,再看下bin目录下面是否有生成,生成后先停止录制,再返回来继续导入证书),选择导入,会生成一个_JMeter Root CA for recording的证书,点击确认。

 

 

 

c) 回到JMeter的HTTP代理服务器配置,点击Start,会有个弹窗,点击ok,就会弹出一个录制器的控制台,这个时候,就可以使用火狐打开需要录制的网页,操作需要录制的功能,录制好后,点控制台的Stop按钮。

 

 

d) 这个时候就可以在Thread Group里面看到很多的请求,对于很多测试无关的请求,可以直接删掉,对于需要数据联动的请求,可以参考手动添加请求中的正则提取功能,将数据提取成变量,供后续的请求使用,打个比方,addResource中新增数据,返回了数据的ID,在后续的updateResource中,需要根据数据的ID做修改,需要在addResource下面增加一个正则提取,把ID提取出来作为一个变量,在updateResource的request中可以直接使用${resourceId}来使用。

 

 e) 参考手动添加请求中的断言,和查看结果树功能,添加合适的断言、查看结果树,用于验证脚本执行结果。如果有失败的,图标会标称红色的告警。

 

 

 

 

 

 

         

 

 

标签:---,HTTP,请求,录制,说明,线程,工具,JMeter
From: https://www.cnblogs.com/yanchuan/p/16928168.html

相关文章

  • kali -Veil绕过杀软工具
    └─$sudoveil[sudo]passwordforkali:===============================================================================Veil|[V......
  • 说明文档
    拓扑建立及带宽时延数据获取具体拓扑结构如下:topo.py点击查看代码#!/usr/bin/envpythonfrommininet.netimportMininetfrommininet.nodeimportController,......
  • 构建镜像开源工具 buildah
    构建镜像开源工具buildahtags:images文章目录​​构建镜像开源工具buildah​​​​1.简介​​​​2.特点​​​​3.Buildah和Podman​​​​4.安装​​​​4.1Cen......
  • webpack打包工具-基本配置
    /**@Author:[email protected]*@Date:2022-11-2517:42:05*@LastEditors:[email protected]*@LastEditTime:2022-11-2617......
  • Linux系列---【linux服务器监控和浏览器客户端连接工具-Cockpit】
    linux服务器监控和浏览器客户端连接工具-Cockpit1.Cockpit的用途(1)Cockpit是一个免费且开源的基于web的Linux服务器管理工具。并且在CentOS8和RHEL8中,Cockpit更......
  • jmeter并发测试如何保证多线程多请求按照顺序执行【杭州多测师】【杭州多测师_王sir】
    1、没有处理线程执行顺序时,多个线程里的请求是一起执行的,不分先后。(未勾选独立线程运行结果)2、在测试计划里勾选独立运行每个线程组。(测试计划处勾选独立运行每个线程组)3、......
  • arpl编译安装群晖工具
    arpl下载地址​​https://github.com/fbelavenuto/arpl/releases​​DSM下载地址​​https://archive.synology.cn/download/Os/DSM​​从第一个链接下载巴西大神写的arpl......
  • ENSP、Wireshark相关工具安装
    研究生选了一门高级计算机网络,做一些实验,在mac上双系统做,有几年没搞网络了,本科是网工的但是毕业之后都在做开发,把这个教程贴在这里,切换Windows系统来做。安装ENSP、Wiresh......
  • Visual Studio下的PHP开发工具VS.PHP初探
    做程序开发,离不开好的IDE。微软的VisualStudio一直是.NET平台程序员的必备工具,对于PHP程序员来说都是使用Editplus或PHPEditor等轻量级开发工具。对于编写小的PHP程序还......
  • scrollTop 用法说明
    scrollTop属性是什么?有些情况下,“元素中内容”的高度会超过“元素本身”的高度,下面的演示中,外层元素的高度值是200px,内层元素的高度值是300px。很明显,“外层元素中的......