JMeter性能测试

5kgi1eie  于 2023-10-20  发布在  其他
关注(0)|答案(2)|浏览(120)

我有“10个场景”,每个场景有“10个交易”。总的脚本执行时间是“45秒”,没有思考时间和节奏。根据利特尔定律,一次迭代中的事务数=?我得给给予多少要么10要么100
我想达到20 TPS。请帮我

k0pti3hp

k0pti3hp1#

如果你想达到20 TPS(10个场景 * 10个事务)= 100个事务,你需要20秒的速度。(pacing - responsetime = thinktime),每个场景4个线程:

我的Excel计算器:
1.总交易=VU*(情景 * 交易)

  1. TPH =(3600/起搏)* 总交易
  2. TPS =TPH/3600

每个场景需要4个线程/VU,速度为20秒。

我在JMeter中用JSR223 PostProcessor计算我的思考时间:

def responsetime = prev.getTime()
def pacing_bool = Boolean.valueOf(vars.get("b_pacing"))
def pacing_ms = Long.valueOf(vars.get("n_pacing"))
def thinktime_ms = Long.valueOf(vars.get("n_thinkTime"))

if (responsetime < pacing_ms && pacing_bool) {
    thinktime_ms = (pacing_ms - responsetime)
} else {
    thinktime_ms = 0
}

vars.put("n_thinkTime", String.valueOf(thinktime_ms))
log.info("(${__threadGroupName} - ${__threadNum}) Think Time after " + prev.toString() + " is set to: " + thinktime_ms + "ms (pacing " + pacing_ms + ")")
q3aa0525

q3aa05252#

您需要提供足够数量的线程,具体数量取决于您的应用程序响应时间。如果响应时间是500毫秒,10个用户就足够了,如果响应时间是1秒-你将需要20个用户,等等。
如果你想创建20个TPS的负载,你可以使用。Throughput Shaping Timer

可使用JMeter Plugins Manager安装吞吐量整形定时器

相关问题