三、JMeter元素:线程组、采样器、监听器、配置

本文译自https://www.guru99.com/jmeter-element-reference.html

JMeter中的元素是什么?

Jmeter中每种不同的组件统称为元素。每种组件都为特殊的作用而设计,下图展示了一些常用的公共元素:


图片来源于网络

学习JMeter中所有的元素需要花费大量时间,本文我们主要讨论常用的几种类型元素,足够解决日常大多数需求;其他不常使用的可以参考官方文档。

本文主要讨论如下元素,其他元素的详细用法实例,会在后续文章中讨论。

Thread Groups 线程组

Samplers 取样器(各种请求)

Listeners 监听器

Configuration 配置


Thread Groups(线程组)

线程组是多个线程的一个集合。每一个线程代表被测试系统上的一个独立用户,线程模拟一个真实用户对被测试系统进行请求。

举个例子:

一个测试脚本中使用100个线程,则表示JMeter模拟100个用户对站点进行请求。


图片来源于网络


Samplers (采样器)

之前说到JMeter支持HTTP\FTP\JDBC\SMTP等各种协议的请求测试,也知道了线程组可以模拟多个用户进行测试请求,但线程组是如何知道我们要发什么类型的请求呢?其实现就是依赖于samplers来做到的。


图片来源于网络

FTP请求

让我们假想一下,我们需要登陆一个ftp进行下载、上传文件时,应该如何测试呢?JMeter中提供的ftp request类型的采样器就可以帮我们实现如下目的。


图片来源于网络

我们可以新建一个FTP Request配置对应的参数如下;


图片来源于网络

上述配置将实现,发送FTP请求到ftp.example.com的Server端,使用默认端口21,使用用户名和密码,下载Text.txt这个文件到本地。

HTTP Request

HTTP请求是最常使用的组件之一。可以模拟用户对HTTP服务器发送请求,并支持http header\cookies等管理。假如我们请求google,对方返回response和其他资源(image),其过程如下图:


图片来源于网络

具体的使用将在后续文章的实例中使用。


JDBC Request

JDBC请求用来测试数据库的情况; 模拟请求发送到SQL型和NoSQL型数据库; 流程如下图


图片来源于网络

举个例子:

数据库服务器上有个库名testdb,存在表testtable,我们要查询的结果为testresult,使用本地数据库服务器示例配置如下:


数据库连接配置

请求配置如下图


数据库请求配置


Listeners

监听器是对测试的结果进行监听和收集,以图像、报表、树形图、日志等方式呈现测试结果。


图片来源于网络


Graph结果是按请求的时间来显示测试结果,包括响应时间、正确率、平均时间、总请求次数等参数


图片来源于网络

View Result Tree

查看结果树,将响应以html的格式展示如下


查看结果树

View Result in Table

表格形式查看响应结果如下,另外,统计报告、聚合报表,自动为线程组中请求与响应进行统计与聚合,以报告形式展示出来。


常用Listeners


Configuration Elements

配置元素用来为Samplers设置不同的配置、数据化等前置条件; 主要功能:参数化(数据提供)、请求协议的数据准备(http request header\ cookies manager\ TCP defualt等),具体如下图


图片来源于网络

具体每类的使用可以参考用户手册或官方网站实例。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容