Jmeter常用函数

 目录

Jmeter常用函数

Jmeter提供了很多函数,但我们一般只会用到部分的常用函数,所以重点讲解常用的函数及其使用方法

Jmeter查询可使用的函数

打开Jmeter,点击Tools——>函数助手对话框,打开函数助手对话框

函数介绍及其使用

__BeanShell

  • 作用:执行BeanShell语法的程序语句或者Bean Shell脚本文件,比如得到一个算数运算的结果,拼接两个字符串。

  • 参数:
    Expression to evaluate:必填,BeanShell语法的程序语句或者Bean Shell脚本文件
    Name of variable in which to store the result (optional):非必填,储存结果的变量名

  • 示例:
    ${__BeanShell(156/13,)}:得到156除以13的结果为12
    ${__BeanShell(“adf”+”8998”,)}:得到两个字符串拼接后的结果为adf8998
    ${__BeanShell(“${msg01}”+”${msg02}”,msgvar)}:得到${msg01}与${msg02}拼接的字符串${msg01}${msg02},并将其保存至变量msgvar中,使用${msgvar}即可调用

__CSVRead

  • 作用:从csv或者txt文件读取指定列的值,从第0列开始,如果有多个线程,按顺序从第一行开始读取,如果线程数超过数据行数,则重新从第一行开始循环获取

  • 参数:
    CSV file to get values from | *alias:必填,文件绝对路径
    Column number of CSV file | next | *alias:必填,读取第几列的数据,从0开始

  • 示例:
    ${__CSVRead(F:\PPM\JmeterScripts\TSN.csv,0):获取TSN.csv文件中第一列的数据
    ${__CSVRead(F:\PPM\JmeterScripts\TSN.csv,1):获取TSN.csv文件中第二列的数据

__Random

  • 作用:生成指定范围内的随机

  • 参数:
    The minimum value allowed for a range of values:必填,开始值,包括开始值
    The maximum value allowed for a range of values:必填,结束值,包括结束值
    Name of variable in which to store the result (optional):非必填,储存结果的变量名

  • 实例:
    ${__Random(1,100,num)}:随机生成1~100之间的整数,并赋值给变量num

__RandomDate

  • 作用:生成指定范围内的日期

  • 参数:
    Format string for DateTimeFormatter (optional) (default yyyy-MM-dd):非必填,日期格式,认yyyy-MM-dd
    Start date (optional) (default: Now):非必填,开始日期
    End date:必填,结束日期
    String format of a locale (ex: fr_FR , en_EN) (optional):非必填,语言
    Name of variable in which to store the result (optional):非必填,储存结果的变量名

  • 示例:
    ${__RandomDate(yyyyMMdd,20210101,20220329,,):以yyyyMMdd格式随机生成20210101到20220329的随机日期

__RandomString

  • 作用:生成指定长度的字符串

  • 参数:
    Random string length:必填,字符串长度
    Chars to use for random string generation:必填,可选字符串
    Name of variable in which to store the result (optional):非必填,储存结果的变量名

  • 实例:
    ${__RandomString(10,qwertyuiopasdfghjklzxcvbnm1234567890,name)}:在字符串qwertyuiopasdfghjklzxcvbnm中随机获取6位随机字符串

__time

  • 作用:返回当前时间,可指定返回格式。

    年:yyyy
    月:MM
    日:dd
    时:hh
    分:mm
    秒:ss

  • 参数:
    Format string for SimpleDateFormat (optional):非必填,返回格式
    Name of variable in which to store the result (optional):非必填,储存结果的变量名

  • 实例:
    ${__time(,)}:获取13位时间戳,比如1648524937215
    ${__time(yyyy-MM-dd hh:mm:ss,)}:获取当前时间并生成指定格式yyyy-MM-dd hh:mm:ss

__javaScript

  • 作用:返回JavaScript脚本执行结果,还可以直接调用jmeter的内置函数

  • 参数:
    JavaScript expression to evaluate:必填,js表达式
    Name of variable in which to store the result (optional):非必填,储存结果的变量名

  • 示例:
    ${__javaScript(“sdjfsjfk89898”.substring(8,13),):截取字符串中索引位8~13位的值,逗号前要加转义符‘\’。

__substring

  • 作用:从字符串中获取指定范围的子串

  • 参数:
    String to get part of:必填,需要获取子串的字符串
    Begin index (first is 0):必填,开始索引,从0开始
    End index:必填,结束索引,不包括
    Name of variable in which to store the result (optional):非必填,储存结果的变量名

  • 示例:
    ${__substring(afsdkjfs78564654,3,9,):截afsdkjfs78564654的第4个到第9个之间的字符串

__split

  • 作用:根据分隔符分割字符串

  • 参数:
    String to split:必填,需要分隔的字符串
    variable Name:非必填,储存结果的变量名
    String to split on. Default is , (comma).:非必填,分隔符,认为英文逗号

  • 示例:
    ${__split(asd4|556654,var,|)}:以|分隔asd4|556654字符串,并保存至变量var

__chooseRandom

  • 作用:从指定的范围里面取值

  • 参数:
    Any number of values to choose from:必填,指定多个字符串,字符串数量必须>=2,多个字符串之间用英文逗号分隔
    Last value must be variable name where choice will be stored:必填,储存结果的变量名

  • 示例:
    ${__chooseRandom(true,false,var)}:随机生成true或false,并赋值给var

__if

  • 作用:判断给定条件是否成立

  • 参数:
    Actual value:非必填,实际值
    Expected value:非必填,期望值
    Result if actual == expected:非必填,如果相等则返回的值
    Result if actual != expected:非必填,如果不相等则返回的值
    Name of variable in which to store the result (optional):非必填,引用变量名

  • 示例:
    ${__if(0,1,success,fail,msg)}

相关文章

Jmeter:Authenticationcredentialswerenotprovided上次在使...
初次使用jmeter时,结果树中返回的数据为未转码内容,如下:...
jmeter默认语言设置: 1、临时设置:进入options--ChooseLa...
第一步:打开jmeter工具。 第二步:点击鼠标右击,点击添加...
在之前的博文中,Jmeter二次开发——基于Java请求,已介绍了...
打开虚拟机然后用远程连接工具SSH连接到数据库将serveragent...