jmeter使用小结
写这篇短文主要想详细介绍一下jmeter中取样器、逻辑控制器、前置处理器、后置处理器、定时器、配置元件等,可能看起来比较繁杂,其实里面很多操作是类似的,一篇总结和记录的博客:
jmeter官方用户手册链接:https://jmeter.apache.org/usermanual/get-started.html;
jmeter是5.1.1版本;
jmeter优势有:轻量、易持续集成(对命令行命令的执行和轻量)、易实现自动化、基于Java开发的很多插件等;
jmeter中各个部分执行的顺序:
1.配置节点--->2.前置处理器--->3.定时器--->4.采样器--->5.后置处理器--->6.断言--->7.监听器;(后面三个器件在采样器运行有结果后才会执行)
一、jmeter基础设置:
1.jmeter线程组:
主要是通过设置线程组的参数来实现并发,从而进行性能测试,其中黄框内是线程数,蓝框内是实现设置线程数所需时间,绿色框内是循环次数也可选择forever进行持续并发:
2.jmeter中取样器:
下图是在线程组中添加采样器,常用的采样器一般是HTTP Request(接口测试)、JDBC Request(连接操作数据库)、Debug Request(调试脚本和查看参数)等:
下图是HTTP 采样器的一些重要参数:协议、服务名、端口号、请求方法、路径、内容编码,第三个红方框内是关于重定向和连接方式的设置,第四个红框那一栏是请求参数和请求体的设置:
HTTP采样器中高阶的设置是下面图:Retrieve All Embedded Resource(检索所有嵌入式资源)是在网页请求有重定向时需要选中的;
3.jmeter中逻辑控制器:
jmeter中逻辑控制器主要是起到控制采样器的作用,实现循环、判断等逻辑结构,常用的逻辑控制器有If Controller(if判断)、Loop Controller(循环)、Transaction Controller(事务)等:
下面是Loop循环控制器,功能和设置与线程组循环控制一样:
一次控制器,只执行一次的的逻辑控制器并没有设置项,可作为登录控制,只登陆一次,后面在利用循环和判断控制器执行其他:
4.jmeter中前置、后置处理器:
前置处理器中常用的有User Parameters(用户参数)、JDBC PreProcessor(数据库)、Bean shell(写代码):
后置处理器常用的是Regular(正则提取)、Xpath(XML文件提取)、Bean shell(代码):
Bean Shell后置处理器,其中语法类似java,可以导包设置变量调用函数等:
5.jmeter中定时器:
6.jmeter中配置元件
配置元件使用还是很频繁的,可以进行各种默认和初始化的参数设置,进行缓存和cookies值的设置等:
7.jmeter监听器:
监听器中常用的有查看结果树、聚合报告等,不同监视器只是对服务响应的不同展示,根据自己的需求进行选择合适的监听器,对其中的参数进行分析:
聚合报告:可以查看并发采样的具体响应参数:采样个数(线程数*循环次数*采样器个数)、错误error率、吞吐量(Throughput,每秒或者没分钟处理的请求个数)、请求和接收的数据大小每秒等;
查看结果树:可以查看发送的请求数据、响应数据和结果,还可以不同格式查看和保存到本地等;
二、jmeter中的参数化:
1.可以通过配置元件或者测试计划中添加UDV(User Defined Variables),无作用域限制的全局变量:
2.可以通过引入前置处理器或者配置元件设置参数:
2.1 前置处理器中添加User Parameters:
2.2 可以添加配置元件中的CSV Data Config进行表格读取参数,也可以用函数__CSV Read进行读取CSV文件将其设置为变量:
CSV Data设置配置有:文件名或者路径、编码方式、变量名(用英文逗号,隔开)、在文件末尾(EOF)进行循环等:
三、jmeter中的关联:
jmeter中的关联主要是获取采样器中动态的数据,将其传入下一个采样器中进行处理,一般获取动态元素用到后置处理器的正则匹配提取器和Xpath(XML格式)处理器:
提取一个Body中的token值将其设置为jmeter中的变量,可通过${token}进行使用。
四、jmeter中的分布式:
在单机进行压力测试时,解决压力不够或者单机压测效果不理想等问题时会用到分布式压测,需要多台电脑进行压测,其中需要一台控制,多台工作:
1.注意事项:
相同版本的jmeter和JDK;关闭杀毒软件;在同一子网下;
2.实现jmeter分布式压测框架图:
3.实现步骤:
(1)在所有slaves上启动jmeter-server;
(2)在master控制机的配置文件上把slaves的ip地址添加到remote_hosts=[ip1,...,ip5],然后重启master上的jmeter;
(3)在master上的jmeter启动测试脚本,查看监听器的结果;
————————————————————————————————————————————————————
jmeter中BeanShell可以写代码实现一些参数的设置和获取,jmeter还用很多扩展的插件能够实现不同需求的测试;
jmeter使用小结的更多相关文章
- 性能测试工具——Jmeter使用小结(一)
Apache Jmeter是针对Java的一款性能测试工具,利用该工具可以实现自动化的批量测试和结果聚合,适合做接口压测.今天就来捋一捋软件安装的一些小细节和使用. 一.安装 Jmeter基于JDK, ...
- jmeter接口测试小结
摘自:http://www.cnblogs.com/houzhizhe/p/6839736.html JMeter做http接口压力测试 测前准备 用JMeter做接口的压测非常方便,在压测之前我们需 ...
- jmeter常见问题小结
1,报500,查看信息头中的Content-Type 2,https的端口号是443 3,同一个线程组中,不同请求分别用到的字段都可以直接写在‘HTTP信息头管理器’中 4,Debug Sampler ...
- jmeter使用小结(一)
jmeter是用来做接口压力测试的工具.这里只是简单介绍一下使用,大家可以自行查看帮助文档, 1.打开jmeter工具,创建线程组任务 2.添加配置元件,根据需要选择设置 3.添加采样器,这里是htt ...
- jmeter linux使用经验小结
1. 确认务必安装了JDK,并且把路径配置OK.否则执行会报错. 2. 当做负载机时,在hosts 配置上 你的ip 你的hostname 或者使用./bin/jmeter-server ...
- JMeter入门使用指南
初识JMeter 最近开始接触和使用JMeter进行性能测试,也是因为工作需要,不得不学习更多新技能,在此之前一直使用LR进行WEB系统的压力测试,但是在ZK开发的WEB系统,我选择使用JMeter. ...
- JMeter学习(十九)JMeter测试MongoDB
JMeter测试MongoDB性能有两种方式,一种是利用JMeter直接进行测试MongoDB,还有一种是写Java代码方式测试MongoDB性能. 第一种方法 1.编写Java代码,内容如下: pa ...
- JMeter学习参数化User Defined Variables与User Parameters
偶然发现JMeter中有两个元件(User Defined Variables与User Parameters)很相近,刚开始时我也没注意,两者有什么不同.使用时却发现两者使用场景有些不同,现在小结一 ...
- 【jmeter】关联-正则表达和xpath
话说LoadRunner有的一些功能,比如:参数化.检查点.集合点.关联,Jmeter也都有这些功能,只是功能可能稍弱一些,今天就关联来讲解一下. JMeter的关联方法有两种:后置处理器-正则表达式 ...
随机推荐
- 记一次生产kafka消息消费的事故
事故背景: 我们公司与合作方公司有个消息同步的需求,合作方是消息生产者,我们是消息消费者,他们通过kafka给我们推送消息,我们实时接收,然后进行后续业务处理.昨天上午,发现他们推送过来的广场门店信息 ...
- SKF密码设备研究
SKF介绍 SKF接口是国密标准中智能密码钥匙的C语言应用开发接口标准,目前很多国内密码密码设备厂商都为其产品提供了SKF接口的开发包.开发者可以通过统一的SKF接口开发密码应用,访问来自不同设备供应 ...
- iis可以运行但是界面不能在桌面显示是怎么回事
iis可以运行但是界面不能在桌面显示是怎么回事 引用:https://zhidao.baidu.com/question/1948053642075906588.html 在开始->运行 执行i ...
- 【视频开发】伽马校正(gamma correction)学习笔记
我相信几乎所有做图像处理方面的人都听过伽马校正(Gamma Correction)这一个名词,但真正明白它是什么.为什么要有它.以及怎么用它的人其实不多.我也不例外. 最初我查过一些资料,但很多文章 ...
- kafka topic查看删除
1,查看kafka topic列表,使用--list参数 >bin/kafka-topics.sh --zookeeper 127.0.0.1:2181 --list __consumer_of ...
- 『7.5 NOIP模拟赛题解』
T1 Gift Description 人生赢家老王在网上认识了一个妹纸,然后妹纸的生日到了,为了表示自己的心 意,他决定送她礼物.可是她喜爱的东西特别多,然而他的钱数有限,因此他想 知道当他花一 ...
- Oracel 数据库表操作
表结构操作 创建表 create table tableName (id varchar2(36) primary key, name varchar2(36), age number(12,2), ...
- 开源规则引擎 Drools 学习笔记 之 -- 1 cannot be cast to org.drools.compiler.kie.builder.impl.InternalKieModule
直接进入正题 我们在使用开源规则引擎 Drools 的时候, 启动的时候可能会抛出如下异常: Caused by: java.lang.ClassCastException: cn.com.cheng ...
- 封装:WPF基于MediaElement封装的视频播放器
原文:封装:WPF基于MediaElement封装的视频播放器 一.目的:应用MediaElement创建媒体播放器 二.效果图 三.目前支持功能 播放.暂停.停止.快进.快退.声音大小.添加播放列表 ...
- CentOS 7 新系统 手动配置网络 简要步骤
一.配置网卡文件 1.修改网卡文件进入网卡配置文件目录 cd /etc/sysconfig/network-scripts 2.查看网卡文件 # ls CentOS中网卡文件一般为 ifcfg-ens ...