2017-03-06 51 views
1

我想模擬以下用例。多個用戶登錄到服務器,然後在所有用戶都登錄後(他們都具有所需的cookie),他們在服務器上以不同的時間間隔執行特定操作。在同一組中的不同線程之間設置延遲

E.g.

- User1 -> Login - User2 -> Login - User3 -> Login - User1 -> POST foo - Wait 2 sec - User2 -> POST bar - Wait 2 sec - User3 -> POST foobar - End

問題:如何添加的POST動作之間的延遲,而無需添加相同的延遲爲登錄的操作?

我的JMeter的配置是這樣的:

-- Test Plan |- HTTP Cookie Manager |- Thread Group |- login (HTTP request) |- Synchronizing Timer (to wait for all threads to login) |- post (HTTP request)

回答

0

添加一個計時器到您的 「後」 採樣器。

所以它會看起來像:

-- Test Plan 
    |- HTTP Cookie Manager 
    |- Thread Group 
    |- login (HTTP request) 
    |- Synchronizing Timer (to wait for all threads to login) 
    |- post (HTTP request) 
    |- your 2 sec constant timer 

如果你需要的東西的條件,你可以使用的BeanShell/JSR223定時器來代替。

+0

這似乎並不爲我工作。這種改變後發生的情況是,在登錄和POST操作之間只有一個X秒的延遲,但在此之後,不同線程的POST之間沒有延遲。這不符合我在主線程中發佈的流程。 –

0

enter image description here

您必須添加常數定時器發佈請求的內部,一顆顆第二的POST請求延遲在此之前,每次都會發生。

兩個實現您的方案,我們可以設置JMeter的要素如下: enter image description here

相關問題