我需要运行两个单独的线程组(第二组具有无限循环计数)。当第一组完成后停止第二组。如何确定第一组的完成时间?
答案 0 :(得分:4)
这对我有用:
props.put("DONE", "FALSE");
int activeThreadCount = org.apache.jmeter.threads.JMeterContextService.getNumberOfThreads();
if (activeThreadCount <= 1)
{
props.put("DONE", "TRUE");
}
如果控制器添加:
${__BeanShell( props.get("DONE") != null && props.get("DONE")=="TRUE")}
如果控制器内部停止当前线程。
答案 1 :(得分:2)
您可以将后处理器附加到第一个线程组,该线程组在属性中设置标志值。
您的第二个线程组将包含一个循环,直到该属性包含您正在等待的标志值。
答案 2 :(得分:0)
您可以使用以下解决方案:
主题组1
Beanshell采样器 - props.put(&#34;完成&#34;,&#34; FALSE&#34;);
HTTP1
HTTP2
....
Beanshell Sampler - props.put(&#34; finish&#34;,&#34; TRUE&#34;);
线程组2
Controller - $ {__ BeanShell(props.get(&#34; finish&#34;)!= null || props.get(&#34; finish&#34;)==&#34; TRUE&#34;)}
HTTP1
HTTP2
....
希望这会有所帮助。