Jmeter 分布式测试:在运行时更改负载吞吐量 (requests/second)
Jmeter Distributed Testing: Change the load throughput (requests/second) in runtime
我已经设置了一个 jmeter 分布式测试设置,其中包含一个主机和多个从机。
在我的测试计划中,我使用了一个具有 5 个线程的线程组、一个 HTTPRequest 采样器和一个目标设置为 - ${__P(throughput, 100)} 对于当前线程组中的所有活动线程。
我想为我的设置更改运行时的预期请求 'throughput' 值。
例如。最初的默认值 requests/minute(吞吐量)= 100。执行 1 小时后,我想将 requests/minute 更改为 6000。
使用 beanshell 脚本更改吞吐量只会更改 jmeter master 上的值,而不会影响 jmeter slave 和总体请求吞吐量。
感谢您的指点和指导。
您可以考虑使用 Beanshell Server,它将启动一个端点,它将在其中侦听命令,因此您可以更改 throughput
属性 值 "on the fly"
将下一行添加到 user.properties 文件:
beanshell.server.port=9000
beanshell.server.file=../extras/startup.bsh
在 JMeter 安装的 "lib" 文件夹中创建一个类似 changeThroughput.bsh
的 Beanshell 文件,内容如下:
setprop("throughput", args[0]);
就是这样,现在您应该能够在测试执行期间设置 throughput
属性 值:
java -jar bshclient.jar localhost 9000 throughput 6000
查看 How to Change JMeter´s Load During Runtime 文章了解更多信息。
我已经设置了一个 jmeter 分布式测试设置,其中包含一个主机和多个从机。
在我的测试计划中,我使用了一个具有 5 个线程的线程组、一个 HTTPRequest 采样器和一个目标设置为 - ${__P(throughput, 100)} 对于当前线程组中的所有活动线程。
我想为我的设置更改运行时的预期请求 'throughput' 值。
例如。最初的默认值 requests/minute(吞吐量)= 100。执行 1 小时后,我想将 requests/minute 更改为 6000。
使用 beanshell 脚本更改吞吐量只会更改 jmeter master 上的值,而不会影响 jmeter slave 和总体请求吞吐量。
感谢您的指点和指导。
您可以考虑使用 Beanshell Server,它将启动一个端点,它将在其中侦听命令,因此您可以更改 throughput
属性 值 "on the fly"
将下一行添加到 user.properties 文件:
beanshell.server.port=9000 beanshell.server.file=../extras/startup.bsh
在 JMeter 安装的 "lib" 文件夹中创建一个类似
changeThroughput.bsh
的 Beanshell 文件,内容如下:setprop("throughput", args[0]);
就是这样,现在您应该能够在测试执行期间设置
throughput
属性 值:java -jar bshclient.jar localhost 9000 throughput 6000
查看 How to Change JMeter´s Load During Runtime 文章了解更多信息。