前言
Jmeter的線程組在發送2個請求之間需要設置一個等待時間時,類似於代碼里面的sleep休眠時間,可以用固定定時器解決。
固定定時器
有2個HTTP請求,a是注冊用戶請求,b是登錄的請求。先發a請求注冊,注冊成功后,用同一賬號去登錄。
jmeter在發送2個請求的時間間隔非常短,有可能發注冊請求后,數據庫還沒寫入成功就發了登錄請求,導致登錄失敗
像這種情況,我們一般加個sleep等待時間,在jmeter里面可以用固定定時器來實現。
在第二個請求上添加-定時器-固定定時器
設置延遲時間
延遲時間默認是300毫秒,我這里設置延遲2000毫秒,也就是2秒鍾
於是可以看到2個請求間隔2秒鍾
定時器作用域
1.定時器是在每個sampler(采樣器)之前執行的,而不是之后。不管這個定時器的位置放在sampler之后,還是之下,它都在sampler之前得到執行。
2.定時器是有作用域的;當執行一個sampler之前時,所有當前作用域內的定時器都會被執行;
3.如果希望定時器僅應用於其中一個sampler,則把該定時器作為子節點加入;
4.如果希望在sampler執行完之后再等待,則可使用取樣器里面的測試活動(Test Action);
需要注意的是,固定定時器的延時不會計入單個sampler的響應時間,但會計入事務控制器的時間。
如下圖,固定定時器的時長設為2000毫秒。
定時器時長並不計入HTTP請求的響應時間,但被計入“事務控制器”的總時間
如果你堅持看到這里,並且對loadrunner的think time和pacing這兩個概念還有記憶的話,我們可以有答案了:
對於“HTTP 請求”這個sampler來說,定時器相當於loadrunner中的pacing;對於“事務控制器”來說,定時器相當於loadrunner中的think time。
原文地址https://www.cnblogs.com/yoyoketang/tag/jmeter/,轉載請注明出處!