LR中设置pacing值有三种策略。经常用于进行tps的调整。
Iteration,迭代。通过设置,可以指定虚拟用户在同一个Action中重复执行多次,每次重复称之为一个iteration。Iteration可以帮助我们模拟现实世界的重复场景。
Pacing,步调。可以通过设置两次迭代之间的间隔时间,来调整各个action之间的步调(或者称之为节奏)。从定义上来看,Pacing是和iteration绑定在一起的,可以认为是iteration pacing。
具体策略:
第一项:每次迭代之间无间隔时间。
第二项:每次迭代之间设置固定的间隔时间。即当上次迭代结束后,等待一定时间再进行下次迭代。
从图上,可看出分fixed模式与random两种模式。
fixed即取后边设置的固定时间。
random则事先设置一个范围,取值时随机从范围里取值。
第三项:较为复杂。
从上一次迭代开始到本次迭代开始的时间。
此时和响应时间的关系是:
这种模式的时候理想情况下 TPS = 1/pacing 值
此种设置要保证pacing值大于>action时间。
如何获取action时间?
1. action执行时间 和 业务时间 和响应时间的区别?
业务时间 是从lr_start_transaction 到 lr_end_transaction的时间
action执行的时间 粗略的说是整个脚本的执行时间(涵盖业务时间)
响应时间 = 业务时间 +传输时间+服务器损耗时间等多种 通常情况下我们认为 响应时间=业务时间
2. 如何计算action时间?
(1) 注释lr_start_transaction 和lr_end_transaction
(2) 启用自动transaction
runtime-setting中设置:
(3) 设置单用户、无pacing值得情况下 跑下场景,此时的action响应时间就是action时间
参考文章:http://www.51testing.com/html/36/n-170436.html