JMeter中获取随机数、唯一ID、时间日期(包括当前日期增减)截取指定位数的字符等

在JMeter中,您可以使用内置的函数和一些额外的插件来获取随机数、唯一ID、时间日期以及截取指定位数的字符。以下是一些常用的方法:

  1. 获取随机数

    • 使用__Random函数,您可以在指定的最小值和最大值之间生成一个随机数。例如,${__Random(100, 999)}将生成一个100到999之间的随机数。
    • 如果您需要一个随机数,并且希望在一次测试运行中保持不变,可以为其指定一个变量名,例如${__Random(100, 999, myRandomVar)}
  2. 获取唯一ID

    • 您可以使用java.util.UUID来生成一个唯一的ID。在一个BeanShell Sampler中,您可以使用以下代码:

      复制代码

      java

      复制代码
      import java.util.UUID;
      UUID uuid1 = UUID.randomUUID();
      vars.put("myUniqueID", (uuid1.toString()).replaceAll("-",""));
    • 这将生成一个不带连字符的UUID,并将其存储在名为myUniqueID的变量中。

  3. 获取时间日期

    • 使用__time函数,您可以获取当前的时间戳或者格式化的日期时间。例如,${__time(yyyy-MM-dd)}将获取当前日期。
    • 如果您需要在当前日期上增加或减少天数,可以使用__TimeShift函数。例如,${__TimeShift(yyyy-MM-dd,,PT5D,,)}将在当前日期上加5天。
  4. 截取指定位数的字符

    • 使用__substring函数,您可以从一个字符串中截取指定位数的字符。例如,${__substring(yourVariable, 0, 5)}将从变量yourVariable中截取前5个字符。

    • 您也可以使用BeanShell Sampler中的Java代码来截取字符串。例如:

      复制代码

      java

      复制代码
      String originalString = vars.get("yourVariable");
      String substring = originalString.substring(0, 5);
      vars.put("mySubstring", substring);
    • 这将把截取的子字符串存储在名为mySubstring的变量中。

以上是JMeter中常用的一些函数和方法,可以帮助您在测试中生成随机数、唯一ID、时间日期以及截取字符串。

更多jmeter参数化函数

Meter 提供了多种参数化函数,可以帮助您在测试中实现动态数据的生成和处理。以下是一些常用的 JMeter 参数化函数:

  1. 随机数函数 (__Random)

    • 用于生成指定范围内的随机整数。例如,${__Random(1, 100)} 会生成一个1到100之间的随机数 。
  2. 随机字符串函数 (__RandomString)

    • 用于生成指定长度的随机字符串。例如,${__RandomString(10)} 会生成一个长度为10的随机字符串 。
  3. 当前时间戳函数 (__time)

    • 用于获取当前时间的时间戳。例如,${__time(yyyy-MM-dd)} 会获取当前日期 。
  4. 随机日期函数 (__RandomDate)

    • 用于生成指定范围内的随机日期。例如,${__RandomDate(2010-01-01, 2020-12-31)} 会生成一个2010年1月1日到2020年12月31日之间的随机日期 。
  5. 机器IP函数 (__machineIP)

    • 用于获取本机的IP地址。例如,${__machineIP} 会返回本机的IP地址 。
  6. 机器名称函数 (__machineName)

    • 用于获取本机的计算机名。例如,${__machineName} 会返回本机的计算机名 。
  7. 命令行属性函数 (__P)

    • 用于获取命令行中定义的属性。例如,${__P(property_name)} 会获取命令行中定义的属性值 。
  8. JMeter属性函数 (__property)

    • 用于获取 JMeter 属性。例如,${__property(jmeter.version)} 会获取 JMeter 的版本号 。
  9. 正则表达式提取函数 (__regexFunction)

    • 与后置处理器的正则表达式提取器用法相同,用于从响应中提取数据。例如,${__regexFunction(匹配的正则表达式, 组号, 匹配组的变量名)}
  10. 字符串截取函数 (__split)

    • 用于截取字符串的一部分。例如,${__split(yourVariable, -1, 5)} 会从变量 yourVariable 中截取最后5个字符 。
  11. 测试计划名称函数 (__TestPlanName)

    • 用于获取当前测试计划的名称。例如,${__TestPlanName} 会返回当前测试计划的名称 。
  12. 线程编号函数 (__threadNum)

    • 用于获取当前线程的编号。例如,${__threadNum} 会返回当前线程的编号 。
  13. UUID函数 (__UUID)

    • 用于生成一个唯一的ID。例如,${__UUID} 会生成一个UUID 。
  14. 变量表达式函数 (__V)

    • 用于执行变量表达式并返回结果。例如,${__V(a{b1})} 可以处理嵌套变量 。
  15. XPath函数 (__XPath)

    • 用于匹配XML文件内容。例如,${__XPath(//tag[@attribute='value'])} 可以从XML中提取数据 。

这些函数可以帮助您在 JMeter 测试中实现参数化,从而模拟更真实的用户行为和测试场景

相关推荐
凛铄linshuo1 小时前
爬虫简单实操2——以贴吧为例爬取“某吧”前10页的网页代码
爬虫·python·学习
牛客企业服务1 小时前
2025年AI面试推荐榜单,数字化招聘转型优选
人工智能·python·算法·面试·职场和发展·金融·求职招聘
胡斌附体1 小时前
linux测试端口是否可被外部访问
linux·运维·服务器·python·测试·端口测试·临时服务器
likeGhee2 小时前
python缓存装饰器实现方案
开发语言·python·缓存
项目題供诗2 小时前
黑马python(二十五)
开发语言·python
读书点滴2 小时前
笨方法学python -练习14
java·前端·python
笑衬人心。2 小时前
Ubuntu 22.04 修改默认 Python 版本为 Python3 笔记
笔记·python·ubuntu
蛋仔聊测试2 小时前
Playwright 中 Page 对象的常用方法详解
python
前端付豪3 小时前
17、自动化才是正义:用 Python 接管你的日常琐事
后端·python
jioulongzi3 小时前
记录一次莫名奇妙的跨域502(badgateway)错误
开发语言·python