Random JMeter:多个采样器之间的相同UUID

Random JMeter:多个采样器之间的相同UUID,random,jmeter,uuid,Random,Jmeter,Uuid,具有多个HTTP请求的Jmeter线程组如何在每个线程中使用相同的UUID值 我尝试用${UUID}创建“用户定义变量”元素,用vars.put(“UUID”,UUID.randomuid().toString())创建java预处理器。;(独立地) 但是同一线程中的每个http请求都使用自己的UUID。将java预处理器作为第一个(启动会话)的子级移动,然后在所有请求中将其作为${UUID}调用,以仅获取一个UUID值 另一个选项没有代码:添加为第一个(启动会话)的预处理器,名称为uuid2

具有多个HTTP请求的Jmeter线程组如何在每个线程中使用相同的UUID值

我尝试用
${UUID}
创建“用户定义变量”元素,用
vars.put(“UUID”,UUID.randomuid().toString())创建java预处理器。
;(独立地)


但是同一线程中的每个http请求都使用自己的UUID。

将java预处理器作为第一个(启动会话)的子级移动,然后在所有请求中将其作为
${UUID}
调用,以仅获取一个UUID值


另一个选项没有代码:添加为第一个(启动会话)的预处理器,名称为
uuid2
和值为
${UUID()}
,您可以使用
${uuid2}
仅获取一个UUID值。

JMeter变量对于每个线程都是局部和单独的(详细信息请参见概念)因此,为了创建随机GUID结构,您需要:

  • 只执行此函数一次(可选,但很好)。例如,可以使用条件设置为以下内容来完成:

    ${__groovy(ctx.getThreadNum() == 0 && vars.getIteration() == 1)} 
    
  • 使函数执行结果对所有JMeter线程可用。有多种方法可以实现,最简单的方法是通过
  • 如果需要,请使用as
    ${{uuid,}
    引用生成的GUID
这样,您就可以从不同的线程甚至线程组访问相同的GUID值

演示:


您不能重用生成的${uuuuid},但始终可以通过JavaScript函数生成它(它允许重用结果):