我已经建立了一个jmeter分布式测试设置,其中包含一个主设备和多个从设备。
在我的测试计划中,我使用一个具有5个线程的ThreadGroup,一个HTTPRequest Sampler和一个常量吞吐量计时器,并将所有活动线程的目标设置为-$ {__ P( throughput ,100)}在当前线程组中。
我想在运行时为我的设置更改预期的请求“吞吐量”值。
例如。最初的请求/分钟(吞吐量)默认值为100。执行1小时后,我想将请求/分钟更改为6000。
使用beanshell脚本更改吞吐量只会更改jmeter主服务器上的值,而不会影响jmeter从属服务器和总体请求吞吐量。
感谢任何指导和指导。
答案 0 :(得分:1)
您可以考虑使用Beanshell Server,它将启动一个端点,该端点将在其中侦听命令,因此您可以“随时”更改throughput
属性值
将以下各行添加到 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文章以了解更多信息。