JMeter 元件:线程组、取样器、监听器、配置
JMeter 中的元素是什么?
JMeter 的不同组件被称为元素。每个元素都设计用于特定目的。
下图显示了 JMeter 中的一些常见元素。
一下子学习所有组件会导致混淆和厌倦。在这里,我们将讨论在开始使用 JMeter 进行测试之前必须了解的组件。
其余组件将在后续教程中使用时进行讨论。本教程中讨论的元素包括:
线程组
线程组是线程的集合。每个线程代表一个使用被测应用程序的用户。基本上,每个线程模拟一个真实的用户请求到服务器。
线程组的控件允许您设置每个组的线程数。
例如,如果您将线程数设置为 100;JMeter 将创建并模拟 100 个用户请求到被测服务器。
采样器
我们已经知道 JMeter 支持测试 HTTP、FTP、JDBC 和许多其他协议。
我们已经知道线程组模拟用户请求到服务器。
但是线程组如何知道它需要发出哪种类型的请求(HTTP、FTP 等)?
答案是采样器
用户请求可以是 FTP 请求、HTTP 请求、JDBC 请求等。
FTP 请求
假设您想要对 FTP 服务器进行性能测试。您可以使用 JMeter 中的 FTP 请求采样器来完成此任务。此控制器允许您向 FTP 服务器发送 FTP“下载文件”或“上传文件”请求。
例如,如果您想从被测 FTP 服务器下载文件“Test.txt”,您需要在 JMeter 中配置一些参数,如下图所示。
JMeter 将向 FTP 服务器ftp.example.com
发送 FTP 命令,然后从该服务器下载文件 Test.txt。
HTTP 请求
此采样器允许您向 Web 服务器发送 HTTP/HTTPS 请求。
考虑以下示例。JMeter 向 Google 网站发送 HTTP 请求,并从该网站检索 HTML 文件或图像。
在教程JMeter 性能测试中,我们将详细解释此 HTTP 请求。
JDBC 请求
此采样器允许您执行数据库性能测试。它向数据库发送 JDBC 请求(SQL 查询)。
例如,数据库服务器有一个名为 test_tbl 的表中存储了一个字段 test_result。您想要从数据库服务器查询此数据;您可以配置 JMeter 向此服务器发送SQL查询以检索数据。
BSF 采样器
此采样器允许您使用 BSF 脚本语言编写采样器。
这是 JMeter 中 BSF 采样器的一个示例
访问日志采样器
此采样器允许您读取访问日志并生成 HTTP 请求。日志可以是图像、HTML、CSS…等。
SMTP 采样器
如果您想测试邮件服务器,可以使用 SMTP 采样器。此采样器用于使用 SMTP 协议发送电子邮件消息。
监听器
监听器:显示测试执行的结果。它们可以以不同的格式显示结果,例如树、表、图表或日志文件。
图形结果监听器在图表上显示服务器响应时间
查看结果树以基本 HTML 格式显示用户请求的结果
表格结果以表格格式显示测试结果摘要
日志以文本文件显示测试结果摘要
配置元素
设置默认值和变量,供采样器后续使用。
下图显示了 JMeter 中一些常用的配置元素
CSV 数据集配置
假设您要测试一个网站,有 100 个用户使用不同的凭据登录。您无需记录脚本 100 次!您可以参数化脚本以输入不同的登录凭据。此登录信息(例如用户名、密码)可以存储在文本文件中。JMeter 有一个元素允许您从该文本文件中读取不同的参数。它是“CSV 数据集配置”,用于从文件中读取行并将其拆分为变量。
这是一个 CSV 数据的示例。它是一个包含用于登录目标网站的用户和密码的文本文件
HTTP Cookie 管理器
让我们通过一个例子来理解这一点——
您使用浏览器(Firefox、IE 等)浏览 www.google.com
您使用用户名和密码登录。
您的用户名和密码将作为 cookie 存储在您的计算机中。
下次访问 www.google.com 时,您无需再次登录,因为您的浏览器将使用您的 cookie 作为用户数据登录。
HTTP Cookie Manager 也具有与 Web 浏览器相同的功能。如果您有一个 HTTP 请求,并且响应包含一个 cookie,Cookie Manager 会自动存储该 cookie,并将其用于未来对该特定网站的所有请求。
HTTP 请求默认值
此元素允许您设置 HTTP 请求控制器使用的默认值。
例如,
您正在向服务器 google.com 发送 100 个 HTTP 请求
您必须手动为所有这 100 个请求输入服务器名称 = google.com
相反,您可以添加一个带有“服务器名称或 IP”字段 = google.com 的 HTTP 请求默认值
无需键入 100 次!
此元素将在教程JMeter 性能测试中详细解释
登录配置元素
登录配置元素允许您添加或覆盖采样器中的用户名和密码设置。
例如,您想模拟一个用户使用用户名和密码登录网站www.facebook.com。您可以使用登录配置元素在用户请求中添加此用户和密码设置。
登录配置元素与 CSV 数据配置
登录配置元素 | CSV 数据配置 |
---|---|
用于模拟一个用户登录 | 用于模拟多个用户登录 |
仅适用于登录参数(用户和密码) | 适用于大量参数 |