JMeter 函数2024 年 11 月 13 日 | 阅读时长 4 分钟 JMeter 函数可以被认为是特殊值,可以填充测试树中任何采样器或其他元素的字段。 JMeter 中函数的语法这里 "__functionName" 匹配函数的名称,括号包围传递给函数的参数。 如果函数参数包含逗号,请务必使用 "\" 转义,否则 JMeter 会将其视为参数分隔符。 例如 函数列表函数类型 | 名称 | 评论 |
---|
信息 | threadNum | 获取线程号。 | 信息 | samplerName | 获取采样器名称 (标签)。 | 信息 | log | 记录 (或显示) 一条消息 (并返回该值)。 | 信息 | machineName | 获取本地计算机名。 | 输入 | StringFromFile | 从文件中读取一行。 | 输入 | FileToString | 读取整个文件。 | 输入 | CSVRead | 从 CSV 分隔文件中读取。 | 输入 | XPath | 使用 XPath 表达式从文件读取。 | 计算 | Counter | 生成一个递增的数字。 | 计算 | intSum | 添加整数。 | 计算 | longSum | 添加长整数。 | 计算 | 随机 | 生成一个随机数。 | 计算 | RandomString | 生成一个随机字符串。 | 脚本 | BeanShell | 运行 BeanShell 脚本。 | 脚本 | javaScript | 处理 JavaScript (Mozilla Rhino)。 | 脚本 | jexl, jexl2 | 评估一个 Commons Jexl 表达式。 | 性质 | 属性 | 读取属性。 | 性质 | P | 读取属性 (简写方法)。 | 变量 | 分割 | 将字符串分割成变量。 | 变量 | V | 评估变量名称。 | 变量 | eval | 评估变量表达式。 | String | regexFunction | 使用正则表达式解析之前的响应。 | String | escapeOroRegexpChars | 引用 ORO 正则表达式使用的元字符。 | String | 字符 | 从数字列表生成 Unicode 字符值。 | String | Unescape | 处理包含 Java 转义符的字符串 (例如 \n & \t)。 | String | unescapeHtml | 解码 HTML 编码的字符串。 | String | escapeHtml | 使用 HTML 编码对字符串进行编码。 | String | TestPlanName | 返回当前测试计划的名称。 |
注意:JMeter 函数和变量始终区分大小写。让我们考虑一个 Log 函数的例子来理解函数在 JMeter 中的使用。 JMeter Log 函数的语法首先,我们将创建一个带有 HTTP 请求采样器的简单测试计划。 创建 JMeter 测试计划- 转到你的 JMeterbin 文件夹,双击 Apache JMeter ".jar" 文件以启动 JMeter 界面。
- 选择测试计划节点,然后右键单击所选项目。
- 鼠标悬停在“添加”选项上,然后将显示元素列表。
- 选择 线程 (用户) > 线程组。
- 将此线程组重命名为线程组 1。
添加 Sampler我们必须在我们的线程组中添加一个 HTTP 请求采样器。 - 选择线程组,然后右键单击选定的项目。
- 鼠标悬停在“添加”选项上,然后将显示元素列表。
- 选择 Sampler > HTTP request 选项。
- 这将添加一个空的 HTTP Request Sampler。

配置 HTTP 请求采样器的字段如下 - 名称 - HTTP 请求采样器 1。
- 服务器名称或 IP - 在我们的例子中,Web 服务器名称将是 www.javatpoint.com。
- 协议 - 此字段保持不变。
- 路径 - 我们将其写为 "/" (斜杠)。它表示我们想要服务器的根页面。
现在,将整个线程组 1 复制并在我们的测试计划中粘贴三次。 - 将其他线程组分别重命名为线程组 2 和线程组 3。
- 将其他采样器分别重命名为 HTTP 请求 2 和 HTTP 请求 3。
下图显示了我们测试计划的目录结构。

添加监听器- 选择测试计划节点,然后右键单击选定的项目。
- 鼠标悬停在“添加”选项上,然后将显示元素列表。
- 选择监听器 > 摘要报告。

保存并执行测试计划- 单击文件 > 将测试计划另存为。
- 将整个测试计划保存为 Function_test.jmx

验证输出
因此,我们已经成功执行了我们的测试计划。 现在,我们将使用 log 函数作为第一个 HTTP 请求采样器的名称。 
单击运行 > 开始执行测试计划。 
你可以看到 Log 函数打印了 "Hello World" 而不是完整的采样器名称。 让我们考虑另一个 Time 函数的例子,我们将再次用作第二个 HTTP 采样器的名称。 时间函数的语法

单击运行 > 开始执行测试计划。

你可以看到 Time 函数打印了确切的时间和日期,而不是完整的采样器名称。 要获得更多关于 JMeter 函数及其使用的知识,请参考 Apache JMeter 发布的文档,链接为:http://jmeter.apache.org/usermanual/functions.html
|