LoadRunner性能測試基礎

簡介

  Loadrunner是一種預測系統行爲和性能的負載測試工具,它可以輕鬆創建虛擬用戶、創建真實的負載、定位性能問題、重複測試保證系統的高性能。


LR與JM對比



組成

  Vuser Generator      C語言腳本開發的 

  Controller        指揮官的作用,控制執行場景 

  Analysis        收集測試數據,進行結果分析的 

什麼時候可以開始執行性能測試? 

  功能測試通過;一般需要進行性能測試的系統,都是用戶量比較大、業務使用比較頻繁、比較重要的功能模塊。


使用Loadrunner的步驟

制定性能測試計劃—>開發測試腳本—>設計測試場景—>執行測試場景—>監控測試場景—>分析測試結果 



爲什麼用事務 

事務Transaction,一般我們用來衡量一個action所消耗的時間,通過它,可以知道一個操作的消耗相應時間,它是作爲度量系統性能的唯一指標


一、創建Vuser腳本—錄製基本腳本

1.創建

選擇File –> New菜單,或點擊   按鈕,打開New Virtual User對話框,顯示可供選擇腳本的協議。 

 

對於常用的應用軟件,我們可以根據被測應用是B/S結構還是C/S結構來選擇協議。 

  如果是B/S結構,就要選擇Web(HTTP/HTML)協議。 

  如果是C/S結構,則可以根據後端數據庫的類型來選擇,如MS SQL Server協議用於測試後臺數據庫爲SQL Server的應用;對於沒有數據庫的WINDOWS應用,可以選擇Windows Sockets協議。 

根據選擇協議的不同,Virtual User Generator 會使用不同的方式和界面引導用戶完成腳本的錄製。


2.錄製前的設置

  選擇Web(HTTP/HTML),點擊Create按鈕,打開Start Recording對話框。選擇的協議不同,打開的窗口就會不同,實例是針對Web錄製的對話框。 

 

  VuGen的腳本分爲三個部分:Vuser_init,Action,Vuser_end。其中Vuser_init和Vuser_end都只能存在一個,而Action可分成無數多個部分,可以通過點擊旁邊的【new】按鈕來創建Action。在迭代執行測試腳本時,Vuser_init和Vuser_end中的內容只會執行一次,迭代的是Action部分。 

3.錄製選項設置


在Start Recording對話框,點擊Options按鈕,進入錄製選項設置。一般要設置以下選項

1) HTTP/HTML level中設置腳本的顯示形式:URL_based script。 

 

建議: 

  1.基於瀏覽器的應用程序推薦使用HTML-based script。 

   2.不是基於瀏覽器的應用程序推薦使用URL-based script。 

  3. 基於瀏覽器的應用程序中包含了JavaScript,並且該腳本向服務器發送了請求,比如DataGrid的分頁按鈕等,推薦使用URL-based script。 

  4.基於瀏覽器的應用程序中使用了HTTPS安全協議,建議使用URL-based script。 

2)Support charset中設置編碼格式:UTF-8; 

 

提示:錄製Web腳本時,生成的腳本中存在亂碼該如何解決? 

  新建腳本—>選擇協議(Http)–>選項–>高級–>選擇“支持字符集”並點選“UTF-8”。 在回放腳本之前:Vuser–>運行時設置–>瀏覽器–>瀏覽器仿真–>更改–>使用瀏覽器–>語言下來選擇 “中文(中國)”。 

4.點擊錄製


  在Start Recording對話框,點擊OK按鈕,開始錄製。系統自動彈出IE,加載XXX的登錄界面。在錄製的過程中,屏幕上有一個懸浮的錄製工具欄,是腳本錄製過程中測試人員和VuGen交互的主要平臺。 


  在錄製的過程中,可以在相應的步驟插入action、事務、檢查點、集合點等信息。錄製完成後單擊 停止按鈕,LoadRunner開始生成腳本。 

熟悉兩種腳本查看方式: 

  Script View 可以查看全部錄製的腳本代碼 

  Tree View 可以查看每個URL獲取來的頁面


二、增強/編輯腳本

1.插入事務


  插入事務是用於把功能分爲若干部分,在統計性能指標時,可以對不同的事務分別作統計。如果對腳本不是太熟悉,可以在錄製的時候,逐步插入。也可以在錄製完成之後,在腳本中插入。 

錄製加入方式: 

  在錄製時插入操作爲:錄製某個功能開始前單擊插入事務的起始點錄製,直到某個功能結束插入事務的結束點。 

在腳本的插入方式爲: 

  插入事務起始點: 

    單擊某個功能起始前的空白處右鍵鼠標–> insert–> start transaction–> 命名–> OK。系統自動在腳本語句中插入如下語句: 

    lr_start_transaction(“登錄”); 

  插入事務結束點: 

    單擊某個功能結束後的空白處右鍵鼠標–> insert–> end transaction–> 命名(與起始點的名字一致)–>OK。系統自動在腳本語句中插入如下語句: 

    lr_end_transaction(“登錄”,LR_AUTO); 

 

2.參數化


  參數化的作用是在進行場景執行的時候,每個不同的虛擬用戶可以按照參數的讀取策略讀取到參數值,以模擬不同用戶在提交或者讀取不同的數據。 

   每個用戶在界面上讀取和提交的信息都不太相同,因此一般都需要參數化,其它與輸入信息對應的比如用戶id之類的信息也需要參數化;另外,錄製環境絕大多數情況下與執行環境不一致,因此一般需要對IP、端口或者域名做參數化。 

下面將分四部分來介紹參數化的方法和實施過程:

確定需要參數化的常量

準備數據

對腳本進行參數化

還原初始字符串

1

2

3

4

 

 

 



Vuser編輯器詳解


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章