【问题标题】:How to run one record across multiple thread groups in JMeter?如何在 JMeter 中跨多个线程组运行一条记录?
【发布时间】:2012-10-23 18:47:26
【问题描述】:

我的 CSV 文件中有 50 条记录(行),并且我有 10 个线程组,它们都相互依赖。

示例(我正在调用线程组 TH):

TH1
|_some request
  |_fetching output value

TH2
|_request(passing TH1 output value here)
  |_fetching output

我想从 CSV 运行第一条记录并从 TH1 连续运行到 TH10,然后从 CSV 中选择第二条记录并连续运行 TH1 到 TH10。

现在我的脚本正在从 CSV 中挑选任何记录,并以线程和请求的有序方式运行。

我还想将每个线程的所有输出值存储在某个地方(csv、txt、任何变量)。

【问题讨论】:

  • 您想:1) 运行第一行的所有线程组,然后运行第二行的所有线程,或者 2) 读取 CSV 文件并为每一行:运行第一个线程,然后运行第二个,等等?
  • 我回答你的问题了吗?

标签: jmeter jmeter-plugins


【解决方案1】:

最简单的方法是通过 JMeter 插件的Inter-Thread Communication

线程组 1 CSV 数据集配置 请求 // 在 PostProcessor 中获取 outputValue1 线程间通信后处理器(FIFO队列=FIRST,要放入的值=${outputValue1}) // 将 outputValue1 存储在某处 线程组 2 请求 线程间通信预处理器(FIFO队列=FIRST,变量名=${inputValue2}) // 在 PostProcessor 中获取 outputValue2 线程间通信后处理器(FIFO队列=SECOND,要放入的值=${outputValue2}) // 将 outputValue2 存储在某处 ... 线程组 10 请求 线程间通信预处理器(FIFO队列=NINE,变量名=${inputValue10}) // 将 outputValue10 存储在某处

注意 ${inputValueN} 等于 ${outputValueN-1}。

some other ways在线程之间传递变量。但我认为这个是最简单的。

【讨论】:

  • 嗨,谢谢你的回复,但我没明白你在说什么 ${inputValueN} 等于 ${outputValueN-1}。我怎么说 outvalue1 或 2 ......一个值并分配...例如 myvalue=${outputvalue}..am 没有传递任何编号,请清除我的疑问。我如何控制我的 CSV 文件从 1 行到最后一行运行的另一件事,我的意思是 picj 第一条记录并运行所有线程然后选择第二条记录并运行所有线程a....就像从 CSV 文件中运行 10 条记录一样,有吗任何方式
  • 忘了说,目前我的脚本运行所有创建请求,通过从 CVS 中选择所有行,在所有请求完成后随机选择任何记录(TH1 有多个请求)然后移动到下一个线程但在移动之前到下一个线程,我想用 diff 变量存储所有数据,或者我想运行 1st .2nd ..with 所有线程,你可以看到我以前的帖子
  • @AutomationWorld ${inputValueN} 等于 ${outputValueN-1} 因为线程间通信。
猜你喜欢
  • 2017-07-05
  • 1970-01-01
  • 2021-09-03
  • 1970-01-01
  • 2020-09-24
  • 2012-12-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多