LoadRunner簡介


 

LoadRunner是什么

LoadRunner是一個性能測試工具,它最初是Mercury公司的產品,后背HP收購。

LoadRunner常用來做什么

l 驗證某系統在某環境下是否滿足性能需求。

l 通過測試,規划如何達到要求的性能指標。

l 調整系統環境,進行性能測試,最終使性能達到最優。

為什么要使用LoadRunner進行性能測試

考慮這樣一種情況,現在需要測試某個網站在500個人並發做登陸操作時,系統的平均響應時間是否滿足需求。如果用人工測試的話,可以想象大概的操作場景是這樣,一個主持人安排500個操作員,按下述步驟操作:

1. 所有人在一個大廳中,大廳中有500多台電腦,主持人要求500個操作人員分成組,每個組選一個組長,所有人先都登陸到系統,進入登陸頁面;

2. 主持人喊3...2...1開始!同時記錄開始時間(這個在LoadRunner中有個術語叫“集合點”),組織帶領500個人同時點擊“登陸”按鈕。

3. 看到登陸成功頁面的人把登陸成功時的時間記下。

4. 到了規定的時間,主持人喊停,還沒有登陸成功的操作人員視為操作失敗。

5. 最后,5個組長收集各組的操作結果,匯總給主持人,主持人安排數據統計專員生成統計報告。

這個過程是不是很復雜?而且操作誤差比較大,譬如有的人反應慢,有的人反應快,有的人記錯時間了,有的人偷懶了等等。所以,對於這種性能測試必須靠自動化。現有自動化的工具有很多,譬如Jmeter,譬如LoadRunner。總的來說,Jmeter更自由,LoadRunner更好用,而我們想用好用的,所以我們用LoadRunner。

LoadRunner的主要組件

l Virtual User Generator(用來錄制腳本的,相當於前述例子中操作人員的機器人化)

l Controller(相當於前述例子中的主持人)

l Load Generator(相當於前述的組長)

l Analysis(相當於前述的分析專員)

LoadRunner的一般測試流程

創建腳本->設計場景->運行場景->分析結果

如何使用LoadRunner創建腳本

一、錄制腳本

創建腳本最簡單的方法就是錄制,下面以錄制登陸bugfree系統為例,操作步驟如下:

1. 啟動Virtual User Generator,如下圖所示。

 

2. 新建一個腳本,如下圖所示。

 

3. 選擇合適的協議,這里選擇Web(HTTP/HTML)協議。

 

4. 輸入bugfree的地址,如下圖所示。

 

5. 點擊OK,開始錄制,如下圖所示。

 

6. 輸入登錄信息,點擊登陸。

7. 登陸成功后,點擊“停止”按鈕,一個登陸腳本就錄制完了。

思考:它是如何工作的?

解答:在錄制開始前,我們選擇的是WEB(HTTP/HTML)協議,開始錄制時,Virtual User Generator會記錄所有從當前窗口向服務器發出的HTTP請求,並生成腳本。

二、手工寫腳本

要使用C語言寫腳本,請在創建VUser時選擇C Vuser,如下圖所示:

 

要使用JAVA語言寫腳本,請在創建VUser時選擇JAVA VUser,如下圖所示:

 

CVuser支持加載DLL,JAVA VUser支持加載jar包。

LoadRunner腳本參數化

為什么要進行參數化

為什么要進行參數化呢?考慮這樣一種場景:要求測試一下10個不同用戶並發登陸bugfree的平均響應時間。我們該如何做呢?用10個不同的用戶錄制10次腳本?絕對不是!這個不符合自動化的思想。1000個用戶怎么辦?100000個用戶怎么辦?所以LoadRunner提供了參數化的功能。

如何參數化

以登陸bugfree的腳本為例,我們將用戶名和密碼進行參數化,詳細操作步驟如下:

1. 找到要參數化的用戶名和密碼的值,如下圖所示。

 

2. 將用戶名“gavin”用變量user_name代替。

a) 選中“gavin”,單擊右鍵,選擇“Replace with a Parameter”,如下圖所示。

 

b) 將Parameter name命名為user_name,如下圖所示。

 

此時腳本中的“gavin”就變成了“{user_name}”,如下圖所示:

 

3. 將密碼“111111”用變量password代替。

a) 選中“111111”,單擊右鍵,選擇“Replace with a Parameter”,如下圖所示。

 

b) 將Parameter name命名為password,如下圖所示。

 

單擊上圖中的“Properties”,file選擇和“user_name”參數相同的file,如下圖所示:

 

c) 點擊“Add Column”,添加一個列名為“password”的列,作為存放password參數的值,因為參數password取值和user_name是一一對應的,所以為簡化邏輯,建議將“Select next row”設置為“same line as user_name”,如下圖所示:

 

4. 設置完成后腳本中的代碼如下圖所示:

 

5. 最后可以根據需求為參數添加值。例如,我們這里模擬2個不同的用戶並發登陸bugfree,可按如下操作為參數配置登陸信息:

a) 在user_name或password上單擊右鍵,選擇“Parameter properties”。

 

b) 在彈出的窗口中單擊“Add row”增加記錄,或者點擊“Edit with notepad”進行增加記錄,如下圖所示:

 

c) 這里選擇Edit with Notepad,如下圖所示:

 

按照已有的格式輸入,每條記錄一行,完成后保存即可。

d) 保存后可以看到多了一條用戶信息,如下圖所示。

 

 

 

 


        長按二維碼識別關注,您的支持是我們最大的動力。       

        公眾號:測試夢工廠

        QQ一群:300897805

  

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM