【问题标题】:two Userdefined variables get conflict in Jmeter while merging thread group合并线程组时,两个用户定义的变量在 Jmeter 中发生冲突
【发布时间】:2013-09-18 09:34:13
【问题描述】:

您好将两个线程组合并到一个测试计划中,并为它们提供两个用户定义的变量元素

在两个用户定义的变量中,我都有一个名为 ruby​​Url 的变量,它在每个线程组中具有不同的值 当我一起执行测试计划时,由于变量名冲突 两个不同的线程组

请帮助我如何告诉 Jmeter 它应该从哪个线程组中选择变量

【问题讨论】:

  • 我能得到回复吗,因为这是一个紧急问题,我需要今天解决它

标签: jmeter


【解决方案1】:

你的发现是正确的,但背后的原因不同。

用户定义变量(配置元素)在测试开始后立即初始化和处理,即如果您在三个不同的线程组中有三个不同的用户定义变量元素具有相同的变量名称但不同的值,那么甚至在线程组之前执行所有用户定义的变量都被初始化,因此最后处理的值将被保留。

另一方面,如果您使用用户参数元素(预处理器),它会在该线程执行之前被初始化和处理。因此,如果您在三个不同的线程组中有三个不同的用户定义变量元素,它们的变量名称相同但值不同,那么每次执行线程组时都会处理该值。

【讨论】:

    【解决方案2】:

    !!!!!!!!!!Eureka 找到了这个问题的解决方案!!!!!!!!! 我们可以在 Jmeter 中使用预处理器,例如 User-parameter 因为用户参数是单独的单个线程组,不像用户定义的变量,这是一个测试计划的共同点

    在用户定义的变量中添加同名变量,并添加到每个线程组中。

    还有其他更好的方法来做这件事吗,就像在 java 中一样,我们的方式总是比其他的更好:)

    【讨论】:

    • 我发现也可以在同一线程组内的不同循环控制器中使用这种方法(使用用户参数预处理器)。
    猜你喜欢
    • 2020-08-23
    • 2021-06-30
    • 2020-01-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多