實現LoadRunner多個場景的順序執行

應用場景 假設有3個不一樣的測試場景,分別爲併發登陸、核心業務、可靠性測試,3個場景有前後執行順序。因爲白天測試機器另有用處,只能在晚上進行性能測試,這時咱們的指望是可否把測試場景都設定好以後晚上自動運行,次日咱們回來看測試結果呢? 答案是確定的,能夠有兩種方式實現。web

第一種,相對簡單 充分利用LR Controller裏面Group的功能。 新建一個場景把3個腳本都添加進來,在Edit Schedule中選擇「Schedule by Group」的方式,在StartTime中設置3個腳本的運行順序爲「Start when Group xxx finished」,並在「Scenario Start Time」中設定場景在晚上的運行啓動時間。設定完定時執行場景後,點擊StartScenario按鈕,會出現一個倒計時窗口,這樣在固定的某個時間上,測試場景中的3個腳本將乖乖的按照設定的前後順序進行測試。注意,若是沒有點擊StartScenario按鈕激活測試,是不會真正進行測試的。(感謝Athenst朋友的提醒,^_^)併發

第二種,比較靈活 咱們把應用場景稍微擴展一下,假設其中一、3場景只有一個測試腳本,而核心業務場景由數據錄入、數據查詢、數據上報3個腳本組成,一樣的,3個場景仍需按順序進行測試。這時若是採用第一種方式,因爲第2個場景有3個腳本,因此第三個腳本的啓動時間就是一個問題了。因爲Controller中每一個腳本都對應一個Group,並且GroupName不能重複,這時第三個場景的StartTime中「Start when group finished」則只能是選擇第二個場景中的某個Group,而並不是是第二個場景的3個腳本都完成以後再進行,沒法達到咱們的初衷。 這時,能夠經過命令行的方式來進行。 首先建立並設置好3個測試場景,再建立一個一個批處理程序按前後順序調用這3個場景進行測試,最後經過Windows的定時任務設定批處理的執行時間。 批處理示例以下: cls SET M_ROOT="D:\Program Files\MI\Mercury LoadRunner\bin\" %M_ROOT%\wlrun.exe -TestPath "D:\Program Files\MI\Mercury LoadRunner\scenario\Test\TestScen_1.lrs" -Run %M_ROOT%\wlrun.exe -TestPath "D:\Program Files\MI\Mercury LoadRunner\scenario\Test\TestScen_2.lrs" -Run %M_ROOT%\wlrun.exe -TestPath "D:\Program Files\MI\Mercury LoadRunner\scenario\Test\TestScen_3.lrs" -Run 這種方式比較靈活,但須要注意在Result Settings中設置「Automatically create a results directory for each scenario execution」,以避免後面的測試結果覆蓋了前面的。性能

另外補充一下,若是想對某個腳本進行50、100、150...等用戶數遞增的測試,也能夠用以上方法實現,但須要注意的是將事務名稱區分開以便進行分析。測試

相關文章
相關標籤/搜索