基本思路是把需要传递的参数设置成全局参数, 但是有这么一种场景,前一组线程产生 10 组不一样的数据传递给下一个线程组,后一组线程组只能拿到前一组最后一个也就是第十组的数据。 如何设置才能是使跨线程传递的参数一一对应呢
可以在你的参数名中加入线程号 ${__threadNum}拼接一下,这样调用的时候就是按线程号对应的了
请问如何拼接呢
设置参数时可以用props.put("thread_${__threadNum}","${__threadNum}"); 然后调用时用${__P(thread_${__threadNum})}
props.put("thread_${__threadNum}","${__threadNum}");
${__P(thread_${__threadNum})}
试了一下可以 那还有新的问题产生了 这个拼接后的参数传递后 还得自己分割一下才能用嘛
我用的不是线程 数 ,如果有一个线程多次循环就会取到重复的 ,我用的是全局计数器 ${setProperty(CardNo${counter(FALSE,)},${V(CardNo_${counter(true,)})},)}; vars.put("CardNos","${P(CardNo_${_counter(FALSE,)},)}");
保存在 csv 文件中呢
不太明白你的意思,为什么还要分割?
应该是一个线程如果有 10 个值每次变量名是一样的其他线程每次取的也是一样的,所以需要分割
线程组是并行执行的,怎么可能并行时跨线程传递。。。不像同一个线程组里面的 sample 可以顺序来