使用JMeter预处理器和用户变量逻辑

使用JMeter预处理器和用户变量逻辑,jmeter,Jmeter,我是JMeter的新手,这可能是一个愚蠢的问题,但我仍然觉得很难理解这里的概念。 我有一个简单的测试 具有循环计数为2的单个线程的线程组 预处理器放在第二个位置 变量映射上的变量 一种循环,它根据请求执行两次 关于预处理器参数 我希望预处理器将初始化参数,并在请求中使用相同的值两次 看起来它正在执行一次预处理器对调用 当我使用类似的用户定义变量切换预处理器时,它会在每次调用中重用相同的值 有人能解释一下这里的逻辑吗 我使用的是JMeter 2.11,每次执行HTTP请求时都会执行一个预处理器,

我是JMeter的新手,这可能是一个愚蠢的问题,但我仍然觉得很难理解这里的概念。

我有一个简单的测试

  • 具有循环计数为2的单个线程的线程组
  • 预处理器放在第二个位置 变量映射上的变量
  • 一种循环,它根据请求执行两次 关于预处理器参数
  • 我希望预处理器将初始化参数,并在请求中使用相同的值两次

    看起来它正在执行一次预处理器对调用

    当我使用类似的用户定义变量切换预处理器时,它会在每次调用中重用相同的值

    有人能解释一下这里的逻辑吗


    我使用的是JMeter 2.11,每次执行HTTP请求时都会执行一个预处理器,因此,如果您总共有2次迭代,您应该会看到日志两次,您有4次,所以迭代次数可能与您编写的不同,或者您有2个线程


    使用用户定义的变量时,该值将计算一次,然后重新使用。每个线程的值将不同。

    在阅读文档和#UBIK LOAD PACK help之后,我使用了用户变量,并且成功了 用户变量-特定于单个线程

    预处理器连接到一个采样器元素(例如,在我们的例子中是http请求),然后它将在该采样器元素运行之前执行 所以4请求不同的参数,因为它在每个请求之前运行

    用户定义变量-在测试开始时对其进行处理,无论其放置在何处。为简单起见,建议只将元素放置在线程组的开头。这就是为什么我总是得到相同的值