如何在运行测试时使用BeanShell服务器修改Jmeter的用户属性

问题描述 投票:0回答:1

我想在运行测试时实时控制吞吐量。如何使用BeanShell服务器执行此操作?

基本上我想在测试运行时从命令行更新用户属性'throughput'(在Constant Throughput Timer中使用)。

解决方案:根据Dmitri的回答,我做了以下事情: 我加入了user.properties

beanshell.server.port=9000  
beanshell.server.file=beanshell.server.file=/home/sam/JMeter/apache-jmeter-4.0/extras/startup.bsh
  1. 开始JMeter和我的测试。
  2. 在终端中执行此命令: ~/JMeter/apache-jmeter-4.0$ java -jar lib/bshclient.jar localhost 9000 /home/sam/JMeter/beanshell/setthroughput.bsh 100
  3. throughput财产的价值现在是100.太棒了!
jmeter load-testing beanshell
1个回答
1
投票
  1. 将以下两行添加到user.properties文件中: beanshell.server.port=9000 beanshell.server.file=../extras/startup.bsh
  2. 重新启动JMeter以选择设置
  3. 使用__P()函数在常量吞吐量计时器中设置throughput属性,如: ${__P(throughput,60)} 这将默认吞吐量设置为每分钟60个请求(每秒1个请求),如果throughput属性将以某种方式在某处定义 - 该值将被覆盖。
  4. 使用以下内容在JMeter安装的“lib”文件夹中创建setthroughput.bshsetprop("throughput", args[0]);
  5. 在运行时,您将能够修改吞吐量,如: java -jar bshclient.jar localhost 9000 setthroughput.bsh 100 JMeter set throughput

更多信息:Beanshell Server


我相信如果你切换到具有Throughput Shaping Timerload_profile property会更容易,所以你将能够以更灵活和有效的方式控制吞吐量。您可以使用JMeter Plugins Manager安装吞吐量整形计时器

© www.soinside.com 2019 - 2024. All rights reserved.