1. 程式人生 > >Jmeter執行緒組設定及定時啟動任務

Jmeter執行緒組設定及定時啟動任務

Ramp-up Period(in seconds)

【1】決定多長時間啟動所有執行緒。如果使用10個執行緒,ramp-up period是100秒,那麼JMeter用100秒使所有10個執行緒啟動並執行。每個執行緒會在上一個執行緒啟動後10秒(100/10)啟動。Ramp-up需要要充足長以避免在啟動測試時有一個太大的工作負載,並且要充足小以至於最後一個執行緒在第一個完成前啟動。 一般設定ramp-up=執行緒數啟動,並上下調整到所需的。

【2】用於告知JMeter 要在多長時間內建立全部的執行緒。預設值是0。如果未指定ramp-up period ,也就是說ramp-up period 為零, JMeter 將立即建立所有執行緒。假設ramp-up period 設定成T 秒, 全部執行緒數設定成N個, JMeter 將每隔T/N秒建立一個執行緒。

例如:這個執行緒數是3,間隔時間是1,每1/3秒就會啟動一個執行緒;
這裡寫圖片描述

【3】Ramp-Up Period(in-seconds)代表隔多長時間執行,0代表同時併發

這裡寫圖片描述

Delay Thread creation until needed

延遲建立執行緒,直到該執行緒開始取樣,即之後的任何執行緒組延遲和加速時間為執行緒本身。這樣可以支援更多的執行緒,但不會有太多是同時處於活動狀態。

排程器
選中排程器後,需要輸入啟動和結束時間。當測試啟動時,如果必須JMeter會等待啟動時間到達。在每個週期 結束,JMeter檢驗結束時間是否到達,如果是,執行停止,如果不是測試被允許繼續,直到迭代限制到達。
另外你可以使用啟動延遲和持續時間文字域。注意啟動延遲會覆蓋啟動時間,持續時間會覆蓋結束時間。

這裡寫圖片描述

執行緒數:一般我們用來表示多少個使用者,即我們測試時的使用者數量
Ramp-up Period(in Seconds):表示每個使用者啟動的延遲時間,上述我設為1秒,表示系統將在1秒結束前啟動我設定的3個使用者,如果設定為3秒,那麼系統將會在3秒結束前啟動這3個使用者,開始使用者的延遲為1秒, 如果我設定為0秒,則表示立即啟動所有使用者。

迴圈次數:如果你要限定迴圈次數為10次的話,可以取消永遠的那個勾,然後在後面的文字框裡面填寫10;在這裡我們勾上永遠,表示如果不停止或者限定時間將會一直執行下去, 是為了方便排程器的呼叫。

排程器的配置:我們勾選排程器時,將會出現這個面板

啟動時間:表示我們指令碼開始啟動的時間,當你不想立即啟動指令碼測試,但是啟動指令碼的時間不會再電腦旁的時候,你可以設定一個啟動的時間,然後再執行那裡點選啟動,系統將不會立即執行,而是會等到你填寫的時間才開始執行。

結束時間:與啟動時間對應,表示指令碼結束執行的時間。

持續時間:表示指令碼持續執行的時間,以秒為單位,比如如果你要讓使用者持續不斷登入1個小時,你可以在文字框中填寫3600。如果在1小時以內,結束時間已經到達,它將會覆蓋結束時間,繼續執行。

啟動延遲:表示指令碼延遲啟動的時間,在點選啟動後,如果啟動時間已經到達,但是還沒有到啟動延遲的時間,那麼,啟動延遲將會覆蓋啟動時間,等到啟動延遲的時間到達後,再執行系統。

注意:如果我們需要用到排程器來設定持續時間,如果執行緒數不夠多到持續時間結束,我們就必須將迴圈次數勾選為永遠,特別地,如果執行緒組裡面有其他的迴圈,我們也需將該迴圈次數勾選為永遠(如我上面錄製的指令碼中的Step1也是一個迴圈,需要將永遠勾選),否則,按我如上配置,將永遠去掉勾選,文本里填1,那麼無論你將持續時間啟動時間結束時間等設定多少,系統執行1000次後,將會停止不再執行。

例如:
這裡寫圖片描述