Jmeter Inter Thread组通信MxN调用

时间:2016-05-06 11:54:32

标签: jmeter

我有一个setUp Thread组,我在其中创建一个具有唯一ID的资源,路径会给我一个测试网址

在主测试组中,我必须测试在setupthread组中创建的每个url都需要经过严格测试。 testplan

在tearDown线程组中,我需要清除设置组创建。

我面临的问题是,财产价值被覆盖

假设在SetUpthread组中我已经创建了10个资源,那么它的最后一个资源总是mainTest线程组被执行

我正在寻找一种方法foreach setupThread组资源mainTest theadgroup必须执行我在TheadCount和LoopCount中指定的次数

例如:setUpThread组ThreadCount为10,循环次数为10然后我将获得100个不同的unquie资源,然后创建它的mainTest ThreadGroup

100 TC,100 LC,即每个资源调用10000次。

请帮助我实现这张附加照片

2 个答案:

答案 0 :(得分:0)

您可以查看http://jmeter-plugins.org/wiki/InterThreadCommunication/插件。

这对您的情况有帮助。如果有效,请告诉我。

答案 1 :(得分:0)

如果没有自己的测试计划,很难提出任何建议,所以这里只是一种方法,我不保证它会起作用,但这个想法应该没问题。

您需要设置与主线程组中要访问的URL一样多的属性。

例如,如果您使用__counter()函数输出作为后缀在JSR223 Sampler中写下一些URL,如:

JSR223

这将生成以下属性:

URL_1=http://some.url
URL_2=http://some.other.url
etc.

在第二个线程组之后,您可以添加另一个JSR223采样器,将JMeter属性转换为JMeter Variables,如:

Enumeration e = props.propertyNames();
while (e.hasMoreElements()) {
  String propertyName = e.nextElement().toString();
  if (propertyName.startsWith("URL_")) {
      vars.put(propertyName, props.getProperty(propertyName));
  }
}

然后你应该能够使用ForEach Controller来迭代变量。

另请确保use Groovy as JSR223 PostProcessor and Sampler language