我有一个setUp线程组,我正在其中创建一个具有唯一Id的资源,它将为我提供一个用于测试的url
在主测试组中,我必须测试在setupthread组中创建的每个url都需要经过严格测试。testplan
在tearDown线程组中,我需要清除setupgroup的创建。
我面临的问题是,属性值正在被覆盖
假设在SetUpthread组中,我创建了10个资源,那么它的最后一个资源始终是正在执行的mainTest线程组
我正在寻找一种方法来防止每个setupThread组资源,mainTest组必须执行我在TheadCount和LoopCount中指定的次数
例如: setUpThread组ThreadCount是10,循环计数是10,那么我将获得100个不同的unquie资源,然后将创建它的mainTest ThreadGroup
100TC,100LC,即对于每个资源,其10000次被调用。
请帮我拿到这张附图
发布于 2016-05-06 22:49:35
你可以看看http://jmeter-plugins.org/wiki/InterThreadCommunication/插件。
这会对你的情况有所帮助。如果有效,请让我知道。
发布于 2016-05-06 22:52:49
没有你的测试计划本身就很难提出任何建议,所以这里只是一种方法,我不能保证它会工作,但是这个想法应该是好的。
您需要在主线程组中设置与您希望命中的URL一样多的属性。
例如,如果使用__counter()函数输出作为后缀,在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
https://stackoverflow.com/questions/37071732
复制相似问题