JMeter函数助手之V函数

一、背景

在使用Jmeter做性能测试、接口自动化测试时,想要通过函数嵌套的方式引号变量。

比如,想要自动获取用户定义变量中的city_1city_2city_3三个变量的值,想通过${__counter(,num)}函数生成递增数,然后与变量${city_递增数生成函数},在每次执行函数是递增,生成数字1、2、3,然后与city_拼接成变量city_1city_2city_3三个变量。但是其实这样是不行的,${city_${__counter(,num)}}会直接报错。所以想要嵌套就得用jmeter的V函数。如图:

二、函数助手调用

启动jmeter界面后,可以在JMeter的选项菜单中找到函数助手对话框(快捷键:Ctrl+Shift+F1),如下图所示:

打开函数助手后,可从下拉列表中选择需要的函数,并为其参数设定值,不同的函数要求的参数也不同。

函数参数,第一列是名称,这是函数参数的简要描述,第二列是值,这是需要用户填充参数的值。

三、V函数

1、界面说明

Jmeter 本身是不支持嵌套函数,需要借用V函数来实现嵌套函数功能。界面如下:

参数说明:

  • 第一个参数

    • Name of variable (may include variable and function references):必填;需要引用的变量名表达式
  • 第二个参数

    • Default value:非必填;默认值

2、函数使用

2.1、新建用户定义变量,并以下划线形式区分不同的变量

2.2、用V函数来实现嵌套函数功能

要获取用户定义变量中的city_1city_2city_3三个变量的值,就要用${__counter(,num)}函数,在每次执行函数是递增,生成数字1、2、3,然后与city_拼接成变量city_1city_2city_3三个变量。

2.3、设置线程组

线程组配置3个用户,并发请求用户定义变量中的city_1city_2city_3三个变量的值

2.4、发送请求

重结果看,成功用${__counter(,num)}函数,在每次执行函数是递增,生成数字1、2、3,然后与city_拼接成变量city_1city_2city_3三个变量。

#嵌套函数
${__V(city_${__counter(,num)},)}

四、参考

1、官网:https://jmeter.apache.org

posted @ 2022-11-08 17:32  xyztank  阅读(2151)  评论(0)    收藏  举报