我的测试计划中有3个线程组。 这些线程组必须具有固定的请求权重(例如,1 -50%,2nd-40%,3rd-10%)。 如果我需要模拟恒定数量的用户,{@ strong> PMD UBIK-INGENIERIE 给出的the solution in this post如果我将循环计数设置为数字(1,10,100等),则效果很好。但问题是当我为循环计数设置“永远”的复选框时,组之间的比例就会被打破。
现在我需要增加用户数量,节省我的3组之间的请求比例,以执行能力评估。 所有3组必须以50-40-10的恒定比例均匀发送请求。
如果我使用Stepping Thread Group,我可以平均增加每个用户的数量,但我无法设置请求的比例。
你能告诉我任何想法,怎么做?
UPD1。
我的设置屏幕截图:
和
有什么问题?
UPD2。最后一个变体(我为每个组手动设置了数字)是(Thread Group1 - 50%):
答案 0 :(得分:1)
这个想法与PMD UBIK-INGENIERI's answer中的想法相同。
在用户定义的变量或测试计划变量中设置USERS变量(或者您可以通过命令行传递它)。
还设置变量:
PERCENT1 to 0.5
PERCENT2 to 0.4
PERCENT3 to 0.1
使用以下内容添加3个步进线程组:
“此组将开始”设置为
${__BeanShell(Math.round(${PERCENT1}*${USERS})}
${__BeanShell(Math.round(${PERCENT2}*${USERS})}
${__BeanShell(Math.round(${PERCENT3}*${USERS})}
“然后开始”设置为:
${__BeanShell(Math.round(${PERCENT1}*${USERS}/10)}
${__BeanShell(Math.round(${PERCENT2}*${USERS}/10)}
${__BeanShell(Math.round(${PERCENT3}*${USERS}/10)}
如果USERS变量的值可以除以100
,它将起作用