JSR223定时器用于jmeter
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JSR223定时器用于jmeter相关的知识,希望对你有一定的参考价值。
如何使用JSR223 Timer基于计算(持续时间/吞吐量)以秒为单位创建线程延迟。我应该在脚本部分内写什么?我们在测试计划中将持续时间和吞吐量作为Jmeter参数
答案
最简单的方法是使用Precise Throughput Timer或Throughput Shaping Timer - 两者都可以配置所需的吞吐量和测试持续时间。定时器足够智能,可以暂停JMeter线程以达到所需的吞吐量。
如果由于某种原因上述定时器不合适,您可以考虑实现所谓的Pacing - 线程组迭代之间的动态延迟。
示例代码如下:
//Sets the pacing length based on the last requests response time. 4500 is the time in ms
Long pacing = 4500 - prev.getTime();
//If the response time is less than 4500 ms, set the delay value to myDelay
if ( pacing > 0 )
{
//iPacing is equal to the int value of pacing if pacing is not equal to null, otherwise iPacing is null
Integer iPacing = pacing != null ? pacing.intValue() : null;
log.info(String.valueOf(iPacing));
vars.put("myDelay", String.valueOf(iPacing));
return iPacing;
}
//The response time is greater than or equal to 4500 ms, set myDelay to 0
else
{
vars.put("myDelay", "0");
return 0;
}
以上是关于JSR223定时器用于jmeter的主要内容,如果未能解决你的问题,请参考以下文章
Beanshell vs JSR223 vs Java JMeter脚本:性能关闭你一直在等待!