JMeter函数

JMeter教程 · 2019-04-26 11:58:42

JMeter函数可以称为特殊值,可以填充测试树中任何Sampler或其他元素的字段。
JMeter中函数的语法:

${__functionName(var1,var2,var3)} ,

这里__ functionName匹配函数的名称,圆括号围绕发送给函数的参数。

如果函数参数包含逗号,那么请务必使用“\”对其进行转义,否则JMeter会将其视为参数分隔符。
例如:

${__time(EEE\, d MMM yyyy)}

函数列表

函数类型 名称 注解
信息 threadNum 获取线程号
信息 samplerName 获取采样器名称(标签)。
信息 log 记录(或显示)消息(并返回值)。
信息 machineName 获取本地计算机名称。
输入 StringFromFile 从文件中读取一行。
输入 FileToString 读取整个文件。
输入 CSVRead 从CSV分隔文件中读取。
输入 XPath 使用XPath表达式从文件中读取。
计算 Counter 生成递增数字。
计算 intSum 相加int数字。
计算 longSum 相加long数字。
计算 Random 生成一个随机数。
计算 RandomString 生成随机字符串。
脚本 BeanShell 运行BeanShell脚本。
脚本 javaScript 运行javaScript脚本。
脚本 jexl, jexl2 评估Commons Jexl表达式。
属性 Property 读取property文件。
属性 P 读取一个属性(速记方法)。
变量 Split 将字符串拆分为变量。
变量 eval 评估变量表达式。
字符串 regexFunction 使用正则表达式解析先前的响应。
字符串 escapeOroRegexpChars 引用ORO正则表达式使用的元字符。
字符串 Char 从数字列表生成Unicode char值。
字符串 Unescape 包含Java转义的进程字符串(例如\n&\t)。
字符串 unescapeHtml 解码HTML编码的字符串。
字符串 escapeHtml 使用HTML编码对字符串进行编码。
字符串 TestPlanName 返回当前测试计划的名称。

注意:JMeter函数和变量始终区分大小写。

让我们考虑一个Log Function的例子来理解JMeter中函数的使用。

JMeter日志函数的语法:

${__log("message")}

首先,我们将使用HTTP请求采样器创建一个简单的测试计划。

创建JMeter测试计划

  • 进入到JMeter/bin文件夹并双击jmeter.bat文件以启动JMeter界面。
  • 选择测试计划节点,然后右键单击所选项目。
  • 鼠标悬停在“Add”选项上,然后将显示元素列表。
  • 选择“Threads (Users)” > “Thread Grou”
  • 将此线程组重命名为Thread Group 1

添加采样器

我们必须在线程组中添加一个HTTP请求采样器。

  • 选择“Thread Group”,然后右键单击所选项。
  • 鼠标悬停在“Add”选项上,然后将显示元素列表。
  • 选择Sampler > HTTP请求选项。
  • 它将添加一个空的HTTP请求采样器。

将HTTP Request Sampler的字段配置为 -

  • Name - HTTP请求采样器1。
  • Server名称或IP - 在示例中,Web服务器名称将为 - www.codercto.com 。
  • Protocol - 此字段保持不变。
  • Path - 我们将其写为“/”(斜杠)。 它表示我们想要服务器的根页面。

现在,复制整个线程组1 并将其粘贴在测试计划中三次。

  • 将其他线程组分别重命名为线程组2线程组3
  • 将其他采样器分别重命名为HTTP Request 2HTTP Request 3

下图显示了测试计划的目录结构。

添加监听器

  • 选择“Test Plan”节点,然后右键单击所选项目。
  • 鼠标悬停在“Add”选项上,然后将显示元素列表。
  • 选择 Listener -> Summary Report

保存并执行测试计划

  • 单击文件 -> 将测试计划另存为。
  • 将整个测试计划保存为Function_test.jmx
  • 单击“Run” -> “Start” 以执行测试计划。

验证输出

因此,已经成功执行了测试计划。 现在,我们将使用log函数作为第一个HTTP Request Sampler的名称。

您可以看到日志功能已打印“Hello World”而不是完整的采样器名称。 让我们来看看一个时间函数的例子,将再次使用它作为第二个HTTP采样器的名称。

时间函数的语法:

${__time(dd MM YYYY HH mm ss)}

单击Run > Start 以执行测试计划。

可以看到时间函数已打印确切的时间和日期,而不是完整的采样器名称。
要获得有关JMeter函数及其用法的更多信息,请参阅以下链接提供的Apache JMeter文档:
http://jmeter.apache.org/usermanual/functions.html

点击查看所有 JMeter教程 文章: https://codercto.com/courses/l/48.html

查看所有标签

大数据之眼

大数据之眼

[德]尤夫娜·霍夫施泰特 / 陈巍 / 浙江文艺出版社 / 2018-5-7 / 68.00元

德国狂销10万册的大数据商业应用畅销书,经典之作《大数据时代》的姊妹篇。 该书在德语国家促发了一场关于大数据,人工智能与人的关系建构的大讨论。 德国大数据与人工智能领域权威,首度为中国读者亲笔作序。 在后大数据时代,如何维护自己的隐私,如何巧妙利用资源获得更多金钱? 一部对大数据发展所产生的问题进行思考和规避的先知式作品。 当智能机器欲“优化”我们,入侵我们的生活,统......一起来看看 《大数据之眼》 这本书的介绍吧!

XML、JSON 在线转换
XML、JSON 在线转换

在线XML、JSON转换工具

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器

html转js在线工具
html转js在线工具

html转js在线工具