如果此请求与其他人类似,请道歉 - 我是JMeter的新手并且已经搜索了其他相关帖子但找不到任何内容 - 或者我可能只是不理解它们!
我正在使用基于Web的应用程序测试系统。前端系统将处理通过MQ提交到系统的记录 - 前端允许用户从队列中获取记录,验证一些细节,进行更改并提交更改。
将有20名用户使用前端进行此消息验证,更新和提交。 每个用户需要30秒才能从队列中选择一条消息,进行更改并重新提交 - 因此我们希望1位用户每小时处理120条记录,因此预计20位用户将处理2400条记录/小时
从队列中取出记录,更改记录并提交更改将通过3个单独的网页完成。
SO - 认为3个页面的时间被定义为24秒(在渲染,服务器响应,数据库调用等30秒限制中留下6个) 但是我不知道如何在JMeter中指定它。从我的阅读中我可以看到我可以将一个Timer作为父级添加到采样器中,我假设我可以添加一个Timer作为录音控制器的父级? - 但我需要能够指定24秒的思考时间分布在这3个不同的页面上。
我在其他地方读过一篇帖子,建议如果我在作为测试计划的子项添加高斯随机定时器(其他所有的父项)后使用代理进行记录,那么http代理会将思考时间记录为$ {T高斯随机计时器中的变量 - 我尝试了这个并且这不起作用(我也不想依赖于此 - 我希望能够理解和改变思考时间而不是依赖于JMETER为我做。)
重申 - 20个用户,1个用户完成交易30秒,TT定义为24秒 - 我正在努力使用Timer,在哪里放置它以便思考时间分布在等同的采样器上与用户将浏览的3页相关联的GETS。
为漫长的帖子道歉 - 我只想简明扼要。
非常感谢,
答案 0 :(得分:2)
根据JMeter Timers文档
请注意,定时器在之前处理它们所在范围内的每个采样器;如果在同一范围内有多个定时器,则在每个采样器之前处理所有定时器。 定时器仅与采样器一起处理。与采样器不在同一范围内的计时器根本不会被处理。
要将计时器应用于单个采样器,请将计时器添加为采样器的子元素。计时器将在执行采样器之前应用。要在采样器之后应用计时器,请将其添加到下一个采样器,或将其添加为Test Action采样器的子项。
现在关于"使用什么计时器"
有两种情况:
如果是方案1,即使Constant Timer也足够,除了它将提供结果的可重复性。有关将计时器放在何处的信息,请参阅上面的报价
如果是方案2,您需要Constant Throughput Timer。如果20个用户每小时处理2400个记录,并且每个记录假定3个网页呼叫,则意味着将在一小时内发出7200个请求,这反过来代表每分钟120个请求(这是您应该输入到计时器中的#39) ; s"吞吐量"区域)或每秒2个请求。