jmeter基础介绍

li1-xiao li1-xiao     2022-12-27     783

关键词:

一、优点

1、开源工具,可扩展性非常好

2、高可扩展性,用户可自定义调试相关模块代码

3、精心简单的GUI设计,小巧灵活

4、完全的可移植性和100%纯java

5、完全swing和轻量组件支持(预编译的HAR使用javax.swing.*)包

6、完全多线程框架,允许通过多个线程并发取样以及单独的线程对不同的功能同时取样

7、支持脚本取样器

二、安装及下载

这里附一个最新的jmeter官网下载地址:

http://jmeter.apache.org/download_jmeter.cgi

该链接是4.0版本的jmeter安装包

jmeter本身不需要安装,只需要配置好JDK环境,然后在在jmeter文件中的bin文件中打开jmeter.bat文件即可

最新版本,建议配置的JDK最好用1.7及以上版本

三、基础构成

1、组成部分(目前不太懂)

1)负载发生器:产生负载,多进程或多线程模拟用户行为

2)用户运行器:脚本运行引擎,用户运行器附加在进程或线程上,根据脚本模拟指定的用户行为

3)资源生成器:生成测试过程中服务器、负载机的资源数据

4)报表生成器:根据测试中获得的数据生成报表,提供可视化的数据显示方式·

2、主要概念

2.1测试计划(test plan)

描述一个性能测试,包含本次测试所有相关功能

技术分享图片

 2.2 threads(Users)

技术分享图片

线程组:

通常添加使用的线程,一般一个线程组可看做一个虚拟用户组,其中每个线程为一个虚拟用户

setUp Thread Group:

种特殊类型的线程,可用于执行预测试操作。即执行测试前进行定期线程组的执行

tearDown Thread Group:

一种特殊类型的线程,可用于执行测试后动作。即执行测试结束后执行定期的线程组

以上两个线程组,举个例子:loadrunner的脚本除了action里是真正的脚本核心内容,还有初始化“环境”的初始化脚本测试完毕后对应的清除信息的脚本块,与其对应

 

2.3 控制器

Jmeter有2种控制器:取样器(sampler)和逻辑控制器(Logic Controller)

作用:用这些原件驱动处理一个测试

1)取样器(Sampler)

技术分享图片

是性能测试中向服务器发送请求,记录响应信息,记录响应时间最小单位,JMeter 原生支持多种不同的sampler 

如 HTTP Request Sampler 、 FTP  Request Sampler 、TCP  Request Sampler 、JDBC Request Sampler 等

每一种不同类型的 sampler 可以根据设置的参数向服务器发出不同类型的请求。

Java Request Sampler 和 Beanshell Request Sampler 是两种特殊的可定制的 Sampler (暂不讨论)

 

2)逻辑控制器(Logic Controller)

技术分享图片

包含两类原件:

一类是控制Test Plan中Sampler节点发送请求的逻辑顺序控制器,常用的有:If Controller、Swith Controller、Loop Controller、Random Controller等

另一类是用来组织和控制Sampler节点的,如Transaction Controller、Throughput Controller等

 

2.5 监听器

技术分享图片

对测试结果进行处理和可视化展示的一系列组件,常用的有图形结果、查看结果树、聚合报告等

以上的五类原件就可以构成一个简单的性能测试脚本

 

下面再介绍几种jmeter提供的其他组件:

2.6配置原件(Config Element)

技术分享图片

用于提供对静态数据配置的支持。CSV Date Set Config可以将本地数据文件形成数据池(Date Pool),而对应于HTTP Request Configuration

和TCP Request Sample等类型的Configuration元件则可以修改这些Sample的默认数据等

 

2.7定时器(Time)

技术分享图片

用于操作之间设置等待时间,等待时间使性能测试中常用的控制客户端QPS的手段,jmeter定义了Constant Times、

Constant Throughput Times、Guass Ramdon Times等不同类型的Times

 

2.8断言(Assertions)

技术分享图片

用于检查测试中得到的响应数据等是否符合预期,Assertions一般用来设置检查点,用以保证性能测试过程中的数据交互与预期一致

 

2.9前处理器(Pre Processors)

技术分享图片

用于在实际请求发出之前对即将发出的请求进行特殊处理。

例如:Count处理器可以实现自增操作,自增后生成的的数据可以被将要发出的请求使用,而HTTP URL Re—Writing Modifier处理器则可以实现URL重写,

当URL中有sessionID一类的session信息时,可以通过该处理器填充发出请求实际的sessionID。

 

2.10后处理器(Post Processors)

技术分享图片

用于对Sampler发出请求后得到的服务器响应进行处理。一般用来提取响应中的特定数据(类似loadrunner中的关联)。

例如:Regular Expression Extractor用于提取响应数据中匹配某正则表达式的数据段,并将其填充在参数中,Xpath Extractor则可以用于提取响应数据中通过给定Xpath值获得的数据。。。

 

参考自:昵称:老_张博客,后期会对文章按照自我理解再进行完善。谢谢老张。

测试基础jmeter工具介绍及使用方法(代码片段)

目录一、Jmeter介绍二、Jmeter文件目录介绍1.1bin目录1.2docs目录1.3printable_docs目录1.4lib目录三、Jmeter的基础配置汉化设置主题修改四、Jmeter的基本操作基本元件作用域元件的执行顺序Jemter重要的三个组件五、Jmeter参数化常用方式用户... 查看详情

jmeter-基础介绍

一、前言Jmeter是一款优秀的开源性能测试工具,目前最新版本3.0版本,官网文档地址:http://jmeter.apache.org/usermanual/index.html 二、优点1、开源工具,可扩展性非常好;2、高可扩展性,用户可自定义调试相关模块代码;3、精心... 查看详情

jmeter基础—jmeter聚合报告详解

...告组件内容,不做示例演示。1、聚合报告介绍在使用JMeter进行性能测试时,聚合报告(AggregateReport)可以说是必用的监听器。(1)聚合报告的生成方式聚合报告有2中生成方式:在已有.jtl文件的情况下࿰ 查看详情

jmeter基础学习笔记

一.jmeter包目录介绍1.bin目录是可执行文件,jmeter.bat启动,里面可设置jvm参数根据经验,heap最多设置为物理内存的一半,默认设置为512M。如果heap超过物理内存的一半,可能运行jmeter会慢,甚至出现内存溢出。2.jmeter的log在jmeter.lo... 查看详情

zhuan:jmeter基础之---jmeter基础概念

JMeter 介绍: 一个非常优秀的开源的性能测试工具。 优点:你用着用着就会发现它的重多优点,当然不足点也会呈现出来。 从性能工具的原理划分:Jmeter工具和其他性能工具在原理上完全一致,工具包含4个部分... 查看详情

[转]jmeter基础——安装

...转载链接:http://www.cnblogs.com/fnng/p/5827577.html   Jmeter官方首页:http://jmeter.apache.org/  关于Jmeter可以做什么,官方上也有非常详细的介绍。另外它的文档也写很详细。如果想学习Jmeter,那么它的文档将会是最好的教材... 查看详情

jmeter基础概念

JMeter 介绍: 一个非常优秀的开源的性能测试工具。 优点:你用着用着就会发现它的重多优点,当然不足点也会呈现出来。 从性能工具的原理划分:Jmeter工具和其他性能工具在原理上完全一致,工具包含4个部分... 查看详情

《jmeter:菜鸟入门到进阶》系列

1、基础介绍简单介绍jmeter的元件组成,作用等基础知识;2、录制脚本简述了jmeter录制脚本的2种方式;3、元件的作用域及执行顺序jmeter各元件的作用域及执行的顺序;4、Sampler之SOAP/XML-RPCRequest取样器中关于SOAP/XML-RPCRequest的用法... 查看详情

『动善时』jmeter基础—41使用jmeter连接数据库(mysql)(代码片段)

目录1、为什么要使用JMeter连接数据库2、JMeter连接数据库的前提3、JDBC连接配置组件界面介绍4、JMeter连接数据库演示(1)测试计划内包含的元件(2)测试计划中添加链接数据库所依赖的JAR包(3)jdbcconnectionconfiguration组件内容(4... 查看详情

转jmeter基础之--元件的作用域与执行顺序

  前面有介绍过jmeter的元件类别,对于新手来说,jmeter的元件是还是不少的,如果我们按照每一个元件的每一个参数的含义去学习,无疑会降低学习性能测试的热情,就算我们熟悉了所有元件以及元件上的参数了,我们也不知... 查看详情

jmeter基础—jmeter集合点功能的使用

1、集合点介绍“性能测试”一般思路是“多用户并发测试”,但真正的并发其实是不存在的,为了更真实、更接近的实现并发,在需要压力的地方设置集合点,等所有用户都到位的时候,然后一起访问,... 查看详情

jmeter性能测试基础实战

...行。”学习了理论知识,要实操起来。本文主要介绍jmeter性能测试基础实战。二、Jmeter性能测试基础实战  1.测试需求:测试20个用户访问https://www.cnblogs.com/huainanhai/在负载达到30QPS时的平均响应时间。  QPS:QueryPerSecond每秒... 查看详情

jmeter基础-简单脚本带你热个身

构成Jmeter脚本的最小单位是元器件,不同复杂程度的脚本,主要体现在使用了不同类型的元器件,元器件之间的相互关联,相互依赖。本文意在热身,因此介绍最基本的用法。最简单的脚本 左侧菜单树右击添加元器件:线程... 查看详情

jmeter基础

...uoquanyou/article/details/3346172测试计划描述了执行测试过程中JMeter的执行过程和步骤。一个完整的测试计划包括一个或者多个线程组(ThreadGroups)、逻辑控制(LogicController)、实例产生控制器(SampleGeneratingControllers)、侦听器(Listener)、... 查看详情

jmeter接口压力测试课程入门到高级实战(目录)(代码片段)

章节一压力测试课程介绍1、2018年亿级流量压测系列之Jmeter4.0课程介绍和效果演示简介:讲解课程安排,使用的Jmeter版本2、常用压力测试工具对比简介:目前用的常用测试工具对比章节二JMeter4.x基础知识讲解和压测实操3、Jmeter... 查看详情

zhuan:jmeter基础之--元件的作用域与执行顺序

前面有介绍过jmeter的元件类别,对于新手来说,jmeter的元件是还是不少的,如果我们按照每一个元件的每一个参数的含义去学习,无疑会降低学习性能测试的热情,就算我们熟悉了所有元件以及元件上的参数了,我们也不知道如... 查看详情

jmeter中的debugsampler介绍

一、DebugSampler介绍:  使用Jmeter开发脚本时,难免需要调试,这时可以使用Jmeter的DebugSampler,它有三个选项:JMeterproperties,JMetervariables,Systemproperties:1、JMeterproperties和Systemproperties:通常都选false,这两个就是JMeter和系统的属... 查看详情

jmeter--作为测试你必须要知道的基础名词与环境搭建

       大家好,我们本章开始学习Jmeter,后续还会有RF以及LoadRunner的介绍,为什么要学习Jmeter,它主要是用来做性能测试的,其中它也需要间接或直接的需要用到抓包工具,至于为什么需要用到抓包工... 查看详情