内置函数
1 内置 MOCK 函数
1.1 基础变量
1.2 字符串
名称 | 变量 | 说明 |
---|
字符池 | @character(pool) | 从字符串池返回随机的字符 |
随机小写字符 | @character(pool) | 返回一个随机的小写字符 |
随机大写字符 | @character(‘upper’) | 返回一个随机的大写字符 |
特殊符号 | @character(‘upper’) | 返回一个随机的特殊符号 |
字符串 | @string(1,10) | 从字符串池返回一个随机字符串,字符数1-10 |
1.3 个人信息
名称 | 变量 | 说明 |
---|
身份证号 | @idCard | 随机生成一个身份证号(生成的身份证号码并不一定是真实有效) |
随机小写字符 | @idCard(birth) | 指定月份身份证号,例:19990907(生成的身份证号码并不一定是真实有效) |
手机号 | @phoneNumber | 随机生成一个手机号(生成的手机号码并不一定是真实有效) |
1.4 日期/时间
名称 | 变量 | 说明 |
---|
日期 | @date(‘yyyy-MM-dd’) | 返回一个随机的日期字符串。例:1983-01-29 |
时间 | @time(‘HH:mm:ss’) | 返回一个随机的时间字符串。 例:20:47:37 |
日期时间 | @dateTime(‘yyyy-MM-dd HH:mm:ss’) | 返回一个随机的日期和时间字符串。例:1977-11-17 03:50:15 |
当前日期时间 | @now(‘yyyy-MM-dd HH:mm:ss’) | 返回当前日期字符串。例:2014-04-29 20:08:38 |
1.5 中文姓名
名称 | 变量 | 说明 |
---|
中文名 | @cfirst | 随机生成一个常见的中文名 |
中文姓 | @clast | 随机生成一个常见的中文姓 |
中文姓名 | @cname | 随机生成一个常见的中文姓名 |
1.6 英文姓名
名称 | 变量 | 说明 |
---|
英文名 | @first | 随机生成一个常见的英文名 |
英文姓 | @last | 随机生成一个常见的英文姓 |
英文姓名 | @name | 随机生成一个常见的英文姓名 |
1.7 中文文本
名称 | 变量 | 说明 |
---|
大段文本 | @cparagraph | 随机生成一段中文文本 |
句子 | @csentence | 随机生成一个中文句子 |
单字 | @cword | 随机生成一个汉字 |
标题 | @ctitle | 随机生成一个中文标题 |
1.8 英文文本
名称 | 变量 | 说明 |
---|
大段文本 | @paragraph | 随机生成一段英文文本 |
句子 | @sentence | 随机生成一个句子,第一个单词的首字母大写 |
单词 | @word | 随机生成一个单词 |
标题 | @title | 随机生成一个标题 |
1.9 web 变量
名称 | 变量 | 说明 |
---|
网址 | @url(‘http’) | 随机生成一个http URL |
协议 | @protocol | 随机生成一个 URL 协议。例:http ftp |
域名 | @domain | 随机生成一个域名 |
顶级域名 | @tld | 随机生成一个顶级域名。例:net |
邮件地址 | @email | 随机生成一个邮件地址 |
IP 地址 | @ip | 随机生成一个IP地址 |
1.10 数字
名称 | 变量 | 说明 |
---|
自然数 | @natural | 返回一个随机的自然数 |
1-100自然数 | @natural(1,100) | 返回一个随机的1-100的自然数(大于等于 1 的整数) |
整数 | @integer | 返回一个随机的整数 |
1-100整数 | @integer(1,100) | 返回随机的1-100的整数 |
浮点数 | @floatNumber( 1, 10, 2, 5 ) | 返回一个随机的浮点数,整数1-10,小数部分位数的最小值2,最大值5 |
整型数组 | @range(1,100,1) | 返回一个整型数组,参数分别:start:起始值,stop:结束值,step:步长 |
1.11 地区
名称 | 变量 | 说明 |
---|
区域 | @region | 随机生成一个(中国)大区。例:华北 |
省份 | @province | 随机生成一个(中国)省(或直辖市、自治区、特别行政区) |
城市 | @city | 随机生成一个(中国)市 |
地区 | @county | 随机生成一个(中国)县 |
省份/市/县 | @county(true) | 随机生成一个(中国)县(带省市)。例:甘肃省 白银市 会宁县 |
邮编 | @zip | 随机生成一个邮政编码 |
1.12 颜色
名称 | 变量 | 说明 |
---|
颜色 | @color | 随机生成颜色,格式为 ‘#RRGGBB’ |
RGB | @rgb | 随机生成颜色,格式为 ‘rgb(r, g, b)’ |
RGBA | @rgba | 随机生成颜色,格式为 ‘rgba(r, g, b, a)’ |
HSL | @hsl | 随机生成颜色,格式为 ‘hsl(h, s, l)’ |
1.13 正则表达式
名称 | 变量 | 说明 |
---|
正则表达式 | @regexp | 根据正则表达式返回结果 |
1.14 函数
函数基于 MOCK 类型添加函数,例:@email|md5。
名称 | 函数含义 | 是否需要输入 |
---|
md5 | md5加密 | |
base64 | base64加密 | |
unbase64 | base64解密 | |
substr | 起止 | 以此开始截取一定长度的字符串 |
concat | 结尾字符串 | 以此结尾的字符串 |
lconcat | 开头字符串 | 以此开头的字符串 |
sha1 | sha1加密 | |
sha224 | sha224加密 | |
sha256 | sha256加密 | |
sha384 | sha384加密 | |
sha512 | sha512加密 | |
lower | 字母小写 | |
upper | 字母大写 | |
length | 数据长度 | |
number | 字符串转数字 | |
2 内置 JMeter 函数
2.1 变量
变量 | 说明 |
---|
${RandomFromMultipleVars} | 从由|分隔的一组变量的值中提取元素 |
${split} | 将字符串拆分为变量 |
${eval} | 计算变量表达式 |
${evalVar} | 计算存储在变量中的表达式 |
${__V} | 评估变量名 |
2.2 编码
变量 | 说明 |
---|
${escapeHtml} | 使用 HTML 编码对字符串进行编码 |
${escapeXml} | 使用 XML 编码对字符串进行编码 |
${unescape} | 处理包含 Java 转义符的字符串(例如 \n 和 \t) |
${unescapeHtml} | 解码 HTML 编码的字符串 |
${urldecode} | 解码 application/x-www-form-urlencoded 字符串 |
${urlencode} | 将字符串编码为 application/x-www-form-urlencoded 字符串 |
2.3 脚本
变量 | 说明 |
---|
${groovy} | 运行 Apache Groovy 脚本 |
${BeanShell} | 运行 BeanShell 脚本 |
${unescape} | 处理包含 Java 转义符的字符串(例如 \n 和 \t) |
${javaScript} | 处理 JavaScript (Nashorn) |
${jexl2} | 评估 Commons Jexl2 表达式 |
${jexl3} | 评估 Commons Jexl3 表达式 |
2.4 时间
变量 | 说明 |
---|
${time} | 以各种格式返回当前时间 |
${timeShift} | 返回各种格式的日期,并添加指定的秒/分钟/小时/天 |
${dateTimeConvert} | 将日期或时间从源格式转换为目标格式 |
${RandomDate} | 生成特定日期范围内的随机日期 |
2.5 属性
变量 | 说明 |
---|
${isPropDefined} | 测试属性是否存在 |
${property} | 读取属性 |
${P} | 读取属性(简写方法) |
${setProperty} | 设置 JMeter 属性 |
${__isVarDefined} | 测试变量是否存在 |
2.6 数字
变量 | 说明 |
---|
${counter} | 生成一个递增的数字 |
${intSum} | 添加 int 数字 |
${longSum} | 添加长数字 |
${Random} | 生成一个随机数 |
2.7 文件
变量 | 说明 |
---|
${StringFromFile} | 从文件中读取一行 |
${FileToString} | 读取整个文件 |
${CSVRead} | 从 CSV 分隔文件中读取 |
${XPath} | 使用 XPath 表达式从文件中读取 |
${__StringToFile} | 将字符串写入文件 |
2.8 信息
变量 | 说明 |
---|
${digest} | 生成摘要(SHA-1、SHA-256、MD5…) |
${threadNum} | 获取线程组号 |
${threadGroupName} | 获取线程组名称 |
${samplerName} | 获取采样器名称(标签) |
${machineIP} | 获取本机IP地址 |
${machineName} | 获取本地机器名 |
${__TestPlanName} | 返回当前测试计划的名称 |
2.9 字符串
变量 | 说明 |
---|
${log} | 记录(或显示)一条消息(并返回值) |
${logn} | 记录(或显示)一条消息(空返回值) |
${threadGroupName} | 获取线程组名称 |
${RandomString} | 生成一个随机字符串 |
${UUID} | 随机生成一个 UUID |
${char} | 从数字列表生成 Unicode 字符值 |
${changeCase} | 根据不同模式更改大小写 |
${regexFunction} | 使用正则表达式解析先前的响应 |