JMeter常用功能介绍

1、界面说明

1、测试计划界面

在这里插入图片描述

2、线程组界面
在这里插入图片描述
线程组描述:
线程组主要包含三个参数:线程数、循环次数、准备时长(Ramp-Up Period(in seconds))。

  1. 线程数:虚拟用户数。一个虚拟用户占用一个进程或线程。设置多少虚拟用户数在这里也就是设置多少个线程数。
  2. 准备时长:设置的虚拟用户数需要多长时间全部启动。如果线程数为20 ,准备时长为10 ,那么需要10秒钟启动20个线程。也就是每秒钟启动2个线程。
  3. 循环次数:每个线程发送请求的次数。如果线程数为20 ,循环次数为100 ,那么每个线程发送100次请求。总请求数为20*100=2000 。如果勾选了“永远”,那么所有线程会一直发送请求,一到选择停止运行脚本。

3、HTTP请求
对于jmeter来说,取样器(Sampler)是与服务器进行交互的单元。一个取样器通常进行三部分的工作:

  1. 向服务器发送请求
  2. 记录服务器的响应数据
  3. 记录相应时间信息
    在这里插入图片描述
    a)名称:本属性用于标识一个取样器,建议使用一个有意义的名称。
    b)注释:对于测试没有任何作用,仅用户记录用户可读的注释信息。
    c)服务器名称或IP :HTTP请求发送的目标服务器名称或IP地址。
    d)端口号:目标服务器的端口号,默认值为80 。
    e)协议:向目标服务器发送HTTP请求时的协议,可以是http或者是https ,默认值为http 。
    f)方法:发送HTTP请求的方法,可用方法包括GET、POST、HEAD、PUT、OPTIONS、TRACE、DELETE等。
    g)Content encoding :内容的编码方式,默认值为iso8859
    h)路径:目标URL路径(不包括服务器地址和端口)
    i)parameters: 请求的参数
    j)自动重定向:如果选中该选项,当发送HTTP请求后得到的响应是302/301时,JMeter 自动重定向到新的页面。
    k)Use keep Alive : 当该选项被选中时,jmeter 和目标服务器之间使用 Keep-Alive方式进行HTTP通信,默认选中。
    l)Use multipart/from-data for HTTP POST :当发送HTTP POST 请求时,使用Use multipart/from-data方法发送,默认不选中。

4、循环控制器界面
1.右键点击线程组—>添加---->逻辑控制器—>循环控制器,这里也是针对线程组循环的功能
在这里插入图片描述
这里也是只有两个选项,一个是勾选永远,一个是选定固定次数。
2.关于线程组界面和循环控制器界面,这两个循环控制,以循环控制器的设置为主。

5、JMeter中所有逻辑控制器
以下是JMeter中所有逻辑控制器的列表:

逻辑控制器 逻辑控制器
运行时控制器 IF控制器
事务控制器 录音控制器
简单控制器 while控制器
Switch控制器 ForEach控制器
模块控制器 包括控制器
循环控制器 仅一次控制器
交错控制器 随机控制器
随机顺序控制器 吞吐量控制器

添加逻辑控制器到测试计划中方法:线程组–右击—add—Logic Controllor–选择控制器即可

6、监听器
添加逻辑控制器到测试计划中方法:线程组–右击—add—监听器–选择监听器即可

1.性能测试就是以各种形式分析服务器响应。
2.当JMeter的采样器组件被执行时,监听器提供JMeter收集的关于那些测试用例的数据的图形表示。它便于用户在某些日志文件中以表格,图形,树或简单文本的形式查看采样器结果。
3.监听器可以在测试的任何地方进行调整,JMeter提供了大约15个监听器,但主要使用的是表,树和图形。

7、定时器设置QPS限制
性能测试需要 “了解博客的首页在负载达到20 QPS时的响应时间”,因此需要控制向博客首页发送请求的负载为20QPS。
  有两种方法:一种可行的方法是逐步调整测试计划中的线程计算的数量以及为取样器(Sampler)添加定时器(Timer),以使HTTP取样器发出的请求的QPS保持在20个左右。但这种方法耗时耗力,需要经过多次尝试才能达到;另一方法,完全通过设置定时器来控制QPS,一旦取样器的响应时间发生改变(网络环境发生改变),就需要重新调整定时器的等待时间。
Jmeter提供了一个非常有用的定时器,称为Constant Throughput Timer (常数吞吐量定时器),该定时器可以方便地控制给定的取样器发送请求的吞吐量。
在这里插入图片描述
Constant Throughput Timer 的主要属性介绍:

  1. 名称 :定时器的名称

  2. Target throughput(in samples per minute):目标吞吐量。注意这里是每分钟发送的请求数,因此,对应测试需求中所要求的20 QPS ,这里的值应该是1200 。

  3. Calculate Throughput based on :有5个选项,分别是:

  4. This thread only :控制每个线程的吞吐量,选择这种模式时,总的吞吐量为设置的 target Throughput 乘以线程的数量。

  5. All active threads : 设置的target Throughput 将分配在每个活跃线程上,每个活跃线程在上一次运行结束后等待合理的时间后再次运行。活跃线程指同一时刻同时运行的线程。

  6. All active threads in current thread group :设置的target Throughput将分配在当前线程组的每一个活跃线程上,当测试计划中只有一个线程组时,该选项和All active threads选项的效果完全相同。

  7. All active threads (shared ):与All active threads 的选项基本相同,唯一的区别是,每个活跃线程都会在所有活跃线程上一次运行结束后等待合理的时间后再次运行。

  8. All cative threads in current thread group (shared ):与All active threads in current thread group 基本相同,唯一的区别是,每个活跃线程都会在所有活跃线程的上一次运行结束后等待合理的时间后再次运行。

JMeter提供的所有计时器元素的列表:
同步定时器、JSR223 时间、 BeanShell时间、高斯随机定时器、统一随机定时器、恒定吞吐量计时器、BSF时间、泊松随机时间

8、配置元素
1.配置元素的工作与采样器的工作类似。但是,它不发送请求,但它允许修改采样器发出的请求。可以在其中收集所有采样器的关联配置值,如webserver的主机名或数据库URL等。配置元素只能从放置元素的分支内部访问。
2.JMeter提供的一些最常用配置元素的列表:
Java请求默认值
LDAP请求默认值
LDAP扩展请求默认值
密钥库配置
JDBC连接配置
登录配置元素
CSV数据集配置
FTP请求默认值
TCP采样器配置
用户定义的变量
HTTP授权管理器
HTTP缓存管理器
HTTP Cookie管理器
HTTP代理服务器
HTTP请求默认值
HTTP标头管理器
简单的配置元素
随机变量

2、目录说明

1.解压后的Jmeter安装目录
在这里插入图片描述
·bin:包含启动、配置等相关命令
·docs:官方本地文档目录
·extras:辅助库
·lib:核心库,包含JMeter 用到的各种基础库和插件
·licenses:包含non-ASF软件的许可证
·printable_docs:可打印版本文档目录
·LICENSE:JMeter许可说明
·NOTICE:JMeter简单信息说明
·README.md:JMeter官方基本介绍
2.bin目录
在这里插入图片描述
主要介绍 bin 目录下我们最关注几个文件:
jmeter.properties:JMeter 核心配置文件,各种配置基本在这完成
log4j.conf:JMeter 日志配置管理
jmeter.log:JMeter 运行日志记录,什么输出信息、警告、报错都在这里进行了记录
jmeter.bat:windows 下 jmeter 启动文件
shutdown.cmd:windows 下 jmeter 关闭文件
stoptest.cmd:windows 下 jmeter 测试停止文件
jmeter-server.bat:windows 下 jmeter 服务器模式启动文件
注:每一个.cmd 文件都对应一个.sh 文件,.sh 是 linux 下的对应功能的文件。

Sampler
在这里插入图片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章