我想在运行测试时实时控制吞吐量。 如何使用BeanShell服务器执行此操作?
基本上我想要更新用户属性'吞吐量' (在测试运行时,从命令行使用恒定吞吐量计时器。
解决方案:
根据德米特里的回答,我做了以下几点:
1.我添加到user.properties
:
beanshell.server.port=9000
beanshell.server.file=beanshell.server.file=/home/sam/JMeter/apache-jmeter-4.0/extras/startup.bsh
~/JMeter/apache-jmeter-4.0$ java -jar lib/bshclient.jar localhost 9000 /home/sam/JMeter/beanshell/setthroughput.bsh 100
throughput
属性的值现在为100.太棒了!答案 0 :(得分:1)
将下两行添加到 user.properties 文件中:
beanshell.server.port=9000
beanshell.server.file=../extras/startup.bsh
使用__P()函数在常量吞吐量计时器中设置throughput
属性,如:
${__P(throughput,60)}
这会将默认吞吐量设置为每分钟60个请求(每秒1个请求),如果某个地方某处定义throughput
属性 - 该值将被覆盖。
在" lib"中创建setthroughput.bsh
JMeter安装的文件夹,包含以下内容:
setprop("throughput", args[0]);
在运行时,您可以修改吞吐量,如:
java -jar bshclient.jar localhost 9000 setthroughput.bsh 100
更多信息:Beanshell Server
我相信如果您切换到Throughput Shaping Timer {{}}}会更容易,这样您就能够以更灵活,更有效的方式控制吞吐量。您可以使用load_profile
property