在foreach控制器'之间设置时间间隔/计时器。请求。
我们有以下情况: 登录单个用户>多次点击问题
在测试计划中使用的Jmeter中实现上述情况:
ThreadGroup - 1 user, 1 ramp up period, 1 loop
-HTTP request to login
-Questionslist - RegExp to get list of questions with -1
-ForEach Controller - 100 times loop count
--HTTP request
当'定时器'设置在' ForEach控制器'并没有真正考虑这个计时器值(例如:2000毫秒)
请指导如何在' ForEach控制器'之间留出时间差。 http请求。
答案 0 :(得分:0)
实际上Constant Timer应该可以正常工作,但是您不会在任何地方看到此延迟,因为默认情况下,PreProcessors,Post-Processors和Timers的持续时间不会包含在采样器时间内。
您可以将您的HTTP请求和计时器置于Transaction Controller下并将其配置为:
这样您就可以将定时器时间(2秒)添加到样品结果中。
然而,上述方法基于每用户,这意味着每个虚拟用户在HTTP请求之间将有2秒的延迟。如果您希望有2秒的绝对空闲时间,即根本没有请求,您可以在HTTP请求采样器之后添加Test Action采样器,并将其配置为产生2000毫秒的延迟。同时将Synchronizing Timer作为Test Action采样器的子项,并将Number of Simultaneous Users to Group by
设置为等于Thread Group中的虚拟用户数 - 这样,Test Action sampler将充当{{3}并且所有的虚拟用户都会满足"在那里睡觉"一起2秒。