天天看點

LoadRunner 技巧之 思考時間設定

  使用者通路某個網站或軟體,一般不會不停地做個各種操作,例如一次查詢,使用者需要時間檢視查詢的結果是否是自己想要的。例如一次訂單送出,使用者需要時間核對自己填寫的資訊是否正确等。

  也就是說使用者在做某些操作時,是會有停留時間的,我把這個時間叫思考時間。但利用代碼去執行的時候是沒有時間的,當然,腳本運作本身是需要時間的,但比起人的思考時間要小很多。這也是我們為什麼要用軟體來代替人的某些工作。

  但有時候,我們在做性能測試時,為了更真實的模拟使用者的操作,需要給代碼加入思考時間。來看看在loadrunner是如何設定思考時間的。

打開loadrunner 的virtual user generator

菜單欄:vuser ---run-time settings...,切換到thark time選項

LoadRunner 技巧之 思考時間設定

好吧!為了更好的了解這個界面上設定,現在我們通過一個腳本來分析。

腳本有點長,但不要被吓到了,重要的幾句我已經加了注釋。你隻用關注那幾行就行了。

lgnore think time :忽視思考時間,也就說勾選這一項的時候 ,你腳本中加入的lr_think_time 函數設定是無效的。選中這一項,運作上面的腳本。

雖然我在腳本中加入了lr_think_time(20); 這條語句,顯現沒起到任何作用。

replay think time:回放思考時間

來看第一個選項:

as recorded : 取決于記錄,選種這一項再來運作上面的腳本。

運作結果中多了一個 think time: 20.0000 ;這說明我們腳本中的lr_think_time(20); 起到了作用,選中這一項後,我們可以在腳本中任意的添加思考時間。

multiply recorded think time by: 錄制思考時間乘以,使用錄制思考時間的倍數。

  其實,在我們腳本錄制的過程中,根據我們的操作,腳本中就可以生成相應的思考時間。這個參數是根據腳本中的思考時間進行調整的。

  例如:腳本是20秒,輸入2,那麼在腳本實際運作時,思考時間将為40秒;輸入0.5 ,腳本在運作時的思考時間為10秒。下面選中此項,輸入0.5,再來檢視腳本運作結果:

注:将原諒腳本會有0.0002秒的誤差。

use random percentage of recorded think time : 使用錄制思考時間的百分比。

  通過指定思考的時間的範圍,可以設定思考時間值的範圍。假如思考時間為20秒,這裡設定的範圍為50% 到100% ,那麼腳本運作時候将随即的在這個範圍(10秒到20秒之間)内取值。下面再來檢視腳本運作時間:

這一次think time: 為15.0050 ,是在10到20秒的範圍之内,你再次運作會發現這個時間不一樣,但不會超出設定的範圍。

limit think time to:  限制思考時間的最大值。

  假如腳本設定的思考時間為20秒,選中這一項并設定為10秒。那麼腳本在運作時,思考時間不會超過10秒。也就是說這設定同樣也制約前面幾個選項。這個你可以自行設定驗證。

感謝:

感謝上面這段代碼很好幫助我們了解思考時間。

備注:添加思考時間可以更真實的模拟使用者行為,但它同時降低了使用者并發。也就是說思考時間越長,對伺服器的壓力會越小。

繼續閱讀