【问题标题】:Jmeter pass number of threads as dynamic valueJmeter将线程数作为动态值传递
【发布时间】:2019-12-07 08:29:41
【问题描述】:

我有一个主线程,我从中获取类别列表,我将每个类别从 ForEach 控制器内部传递到下一个线程。在这个线程中,我在变量中得到了许多类别

在第二个线程中,我将遍历每个类别并使用 ForEach 控制器将每个产品传递到第三个线程。在这个线程中,我在变量中得到了一些产品。

现在我想在第二个和第三个线程中使用上述数量的类别和产品作为动态变量,即如果: 类别是 10,那么第二个线程号应该是 10 产品是 100,那么我想要 100/10 = 10 个线程用于 3 个线程组。

我正在成功使用线程间通信处理器,它在静态线程数下工作正常,但当我通过线程间通信处理器作为变量传递时却不行 请帮帮我

【问题讨论】:

    标签: multithreading variables dynamic foreach jmeter


    【解决方案1】:
    1. 在第一个线程组中,使用__setProperty() function 定义所需的线程数,例如:

      ${__setProperty(threads,10, )}
      
    2. 在第二个线程组中使用__P() function 读取值,例如:

      ${__P(threads,)}
      

    3. 就是这样,第二个线程组将启动您在第一个线程中定义的线程数

    更多信息:Knit One Pearl Two: How to Use Variables in Different Thread Groups

    还要注意 since JMeter 3.1 you should be using JSR223 Test Elements and Groovy language 用于任何形式的脚本,因此请将您的 Beanshell 测试元素转换为 JSR223 并确保使用 Groovy

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-04-17
      • 2012-12-30
      • 1970-01-01
      • 2018-09-11
      • 2019-04-25
      • 1970-01-01
      • 2012-06-09
      • 1970-01-01
      相关资源
      最近更新 更多