2012年2月6日 星期一

loadRunner資料整理(性能測試)


loadRunner資料整理(性能測試
環境搭建
1
.安裝LR8.0版本
a.
\doc複製安裝包到本地,解壓後,裡面有2個檔:Loadrunner 8.0 (WebSite Load Test Tool - Good).iso和說明.txt10000併發用戶註冊碼)
b.
用光碟機工具(DAEMON Tools)打開iso鏡像文件,安裝LR
c.
安裝過程注意:光碟機工具在/doc中的daemon347.exe
              
按預設步驟一步步安裝下來
二.web性能測試計畫
1
.性能測試基本概念
  
性能測試是通過自動化的測試工具類比多種正常、峰值以及異常負載條件來對系統的各項性能指標進行測試。
負載測試和壓力測試都屬於性能測試,兩者可以結合進行。
通過負載測試,確定在各種工作負載下系統的性能,目標是測試當負載逐漸增加時,系統各項性能指標的變化情況。
壓力測試是通過確定一個系統的瓶頸或者不能接收的性能點,來獲得系統能提供的最大服務級別的測試。
2
.什麼時候需要做web性能測試
  
一般來說,開發人員或專案經理會提出需求,幫忙測下某個網站或某個功能點的性能如何?所以基本的測試需求和性能標準需要自己來設定。
  
首先先瞭解到測試的範圍,如果是整個網站的性能水準,則選擇網頁流量最多的幾個頁面,進行頁面概率測試,首先判斷出該網站流量最大的頁面有:首頁,下載頁,個人管理頁,廣告頁,等等其他頁面。頁面和頁面之間的流量也存在著某種關係。假使用戶群的20%會流覽首頁,其中20%中的80%會到下載頁面,20%會進入個人管理頁面,20%會進入廣告頁面。
  
如果是某個功能的測試,可以先進行試探性的測試,可以開始錄製基本的腳本。例如測試網站註冊功能的性能如何?先得出基本的性能標準。
  
這次我要測的是網站的註冊性能。首先註冊功能的功能測試要全部通過,保證功能上沒有問題。然後分析所測物件的模組結構是如何的?註冊方式有3種:直接註冊,協力廠商帳號註冊,手機註冊。其中預期到直接註冊和第三帳號的註冊量最大,所以測試2種方式下的註冊性能如何。那麼這次的性能測試範圍就是直接註冊了。然後在考慮測試環境
  
測試工具:LoadRunner工具模擬多用戶併發請求註冊的用戶端請求。那麼如何模擬這個壓力,如何得出壓力過程中網站的是否穩定,事務的失敗率是否太大?這些都要在開始壓力之前想好。
3
Web性能測試計畫
   5W
“5W”規則指的是“What(做什麼)“Why(為什麼做)“When(何時做)“Where(在哪裡)“How(如何做)
  
做什麼:也就是測試範圍,測試web註冊系統性能是否滿足用戶需求?
   為什麼做:在上線之前,或用戶快速增長之後,及早的驗證系統是否能支援多使用者同時註冊,以免線上時才發現系統承載不了。
  
何時做:也就是測試任務的時間,基本上要1個星期的時間。
  
在哪裡:需要2台測試機,一台是web服務(註冊系統,linux系統),一台是壓力測試專用機(安裝LRwindows系統)。另外需要準備一個自己的觀察機(遠端桌面操作並觀察壓力2台系統的結果)。
  
如何做:也就是測試腳本的錄製和測試場景的設置了。有幾個問題必須先考慮清楚才開始做,LoadRunner能做些什麼?
a.
功能是一個什麼流程?使用者點擊頁面->下一步到號碼頁面->使用者輸入驗證碼->設置使用者密碼->後臺註冊成功(資料庫日誌)->用戶註冊成功
b. LoadRunner
通過使用虛擬用戶來代替實際用戶來減少人員要求。這些Vuser 模擬實際用戶的行為(也就是註冊)
c. LoadRunner
連線監視應用程式的性能,使您可以在測試執行期間對您的系統進行微調。從伺服器的性能調試還是代碼的性能調試。
d. LoadRunner
在測試過程中會自動記錄應用程式的性能。您可以從眾多的圖和報告中進行選擇以查看性能資料。
e. LoadRunner
可檢查出現性能延遲的地方:網路或用戶端延遲、CPU 性能、I/O延遲、資料庫鎖定和資料庫伺服器上的其他問題。LoadRunner 將監視網路和伺服器資源以説明改進性能。
f.
性能測試並不是12次就能完成的工作,可能需要多輪的場景設置然後觀察。
三.一輪測試的整個過程
1
.規劃測試
也就是剛才所說的性能測試計畫,想好第一探測要怎麼做,從最表面的性能指標觀察(回應時間,定義明確的測試計畫確保方案能完成本次測試的目標
2
.創建user腳本
錄製單個用戶完成整個功能時所做的動作(使用者點擊頁面->下一步到號碼頁面->使用者輸入驗證碼->設置使用者密碼->後臺註冊成功(資料庫及日誌)->使用者註冊成功),而且後面的方案需要,可以設置單個使用者反復錄製該腳本的次數
3
.創建方案(測試場景)
設置整個壓力過程中,用戶端請求動作的所有情況,你可以設置使用者數量,多個腳本的百分比,而且還可以創建面向目標的方案,在其中定義你希望達到的測試目標,LR將根據你所設置的目標自動為你創建方案。
4
.運行方案(在運行前,先想好需要監視那些資料)
第一次運行方案時,你可以觀察下監視的性能指標圖表變化,看是否有太大的異常,因為初次用工具肯定會有些問題,這時候可以查找答案排除問題。
5
.監視方案(LR能滿足大部分的性能指標觀察,但有些性能指標需要自己寫些sh腳本錄製)
你可以觀察使用者載入數量,事務成功數,系統資源,web資源,WEB伺服器資源,web應用程式伺服器資源,資料庫服務資源,網路輸送量等。
6
.分析測試結果,得出更有效的下一步測試用例設計
LR
可以記錄下不同負載下的性能資料,可以使用圖表和報告來分析應用程式的性能,而這一環節也是最難的一步
四.測試計畫
1
.分析應用程式
分析單用戶完成整個功能的過程:使用者從用戶端機發出請求,網路環境,web伺服器回應請求,資料庫伺服器保存結果
先不考慮網路環境的瓶頸,在內網中進行性能測試
2
.定義測試目標
度量最終用戶的回應時間:完成一個註冊需要多長時間
定義最優的硬體設定:哪一種硬體設定可以提供最佳性能
檢查可靠性系統:無錯誤或無故障運行的時間長度或難度
度量系統容量在沒有顯著性能下降的前提下,系統能夠處理多大的負載:確定瓶頸哪些因素會延長回應時間
3
.計畫測試實施方案
定義用戶的活動,一個用戶的請求可以定義為一個事務,而且可以在腳本中設置集合點:指示多個用戶同一時刻執行。
4
.檢測測試目標
 
度量最終用戶回應時間:從用戶端請求到伺服器回應完畢所花費的時間
 
定義最優的硬體設定(伺服器的):檢查各項系統組態對性能測試的影響
 
檢查可靠性:確定系統在高工作長期負載下的穩定性級別
確定瓶頸(用戶端,網路,伺服器,資料庫伺服器,程式)
五.錄製腳本
虛擬用戶模擬實際用戶的操作,開始錄製(urlaction,在頁面上操作,完成註冊後,停止腳本錄製。就可以得出整個虛擬使用者註冊過程用戶端部分的行為錄製了。
錄製基本的vuser腳本
VuGen
通過錄製流覽器和 Web 伺服器之間的活動來創建 Web Vuser 腳本。VuGen 監控系統的用戶端(流覽器),並跟蹤所有發送到伺服器以及從伺服器接收的請求。
VuGen 中或從 LoadRunner Controller 運行錄製的 Vuser 腳本時, Vuser 將與伺服器直接通信,無需依賴用戶端軟體。而 Vuser 腳本則通過 API 函數直接執行對 Web 伺服器的調用。
過程:新建腳本->設置錄製選項為action>錄製流覽網站時執行的操作->終止操作
增強並編輯腳本
通過插入事務、集合點、檢查和服務步驟來增強 Vuser 腳本。需要的話還可以定義參數(有變數時),vuser_init vuser_end 部分通常用於錄製伺服器登錄和註銷過程。
配置運行時設置
以獨立模式運行vuser腳本
調試腳本,查看腳本是否有錯。
腳本保存,以便集成到LR方案中
保存腳本。
六.設置方案
1
.選擇方案類型
選擇下列兩個選項之一:
a.
手動方案:如果要生成手動方案,請選擇此方法。通過創建組並指定腳本、負載
生成器和每組中包括的 Vuser 數,可以生成手動方案。
使用百分比模式在腳本間分配Vuser,如果要通過指定許多要在選定 Vuser
本間分配的 Vuser 來生成手動方案,請選擇此選項。
b.
面向目標的方案:選擇此方法可讓 LoadRunner 為您生成方案。在面向目標的方
案中,可以定義通過測試要實現的目標, LoadRunner 將根據這些目標自動生成
方案。
2
.選擇腳本
選擇剛剛保存錄製的腳本
3
.設計方案
a.“
方案計畫窗格顯示了與計畫設定檔有關的資訊:名稱、計畫模式、方案持
續時間、負載行為和方案中要使用的 Vuser 總數。負載預覽顯示已定義方案
計畫的預覽圖。
主要用途是設置虛擬用戶的載入數,以及用戶隨著時間的增長如何載入用戶數量(上升虛擬用戶數,保持最高用戶數,下降訊用戶數),而且可以指示 LoadRunner 在一段延遲之後開始執行方
案。您可以指定讓 LoadRunner 自發出Run命令以來等待的分鐘數,也可以指定讓方案開始的特定時間。
設置相同的時間載入一定的使用者數量,直到全部載入完畢為止,這樣設置的目的是為了方便記錄使用者數量明顯增大時,性能指標的變化情況。
b.“
方案腳本窗格列出了所有啟用和禁用的 Vuser 腳本、腳本路徑、負載生成器
電腦以及分配給每個腳本的 Vuser 在總數中所占的百分比。
4
.預設計方案輸出視窗,監視vuser狀態。需要加進你想要的性能指標圖表
七.執行方案
開始執行方案,保存執行方案的結果。方案將會持續你所設計的時間限制,也可以在中途手工停止或某些條件下停止。
八.監視方案
1
.運行時和事務監視
a.
正在運行的用戶數,已載入時間,每秒點擊次數(表明每個 Vuser 所運行的每一秒鐘內對測試的網站有多少次點擊(HTTP 請求)),通過的事務數,失敗的事務數,錯誤數(點擊後可看到具體的錯誤日誌)。
b.
事務監視圖
事務回應時間
每秒事務數(通過)
每秒事務數(失敗、停止)
每秒事務總數(通過)
2
Web 資源
每秒點擊次數圖:每秒點擊次數圖將點擊(HTTP 請求) Web 伺服器的次數顯示為方案已用時間的函數。可將此圖與事務回應時間圖進行比較,以查看點擊次數對事務性能產生的影響。
輸送量圖:輸送量圖顯示 Web 伺服器在 方案運行的每一秒中的輸送量。輸送量的度量單位是位元組,表示 Vuser 在任何給定的某一秒上從伺服器獲得的資料量。可將此圖與事務回應時間圖進行比較,以查看輸送量對事務性能產生的影響。
每秒 HTTP 回應數圖:每秒=eqqm=回應數圖顯示方案運行的每一秒(X 軸)中從 Web 伺服器返回的HTTP 狀態碼數(Y 軸), HTTP 狀態碼表示 HTTP 請求的狀態,例如
求成功找不到此頁
每秒下載頁數圖:每秒下載頁數圖顯示方案運行的每一秒(X 軸)中從伺服器下載的網頁數
Y 軸)。使用此圖可依據下載的頁數來計算 Vuser 生成的負載量。
3
.系統資源
拖進運行新圖-Unix資源。顯示添加電腦對話方塊,該對話方塊可用于在現有清單中添加要監視的電腦(伺服器)。輸入要監視的電腦的名稱或 IP 位址以及unix平臺。但伺服器需要配置unix中的rstatd守護程式才能監視。
a.
配置rstatd守護程式
具體安裝說明及安裝包在:E:\壓力測試\Linux系統資源配置下
4
Web 伺服器資源
a.
配置 Apache 監視器
apache圖拖進運行視圖中,按一下添加輸入要監視電腦的伺服器名或 IP 位址。選擇電腦運行的平臺,並按一下添加選擇要監視的資源度量
瞭解伺服器統計資訊 URL:http://192.168.1.22:80/server-status?auto
5
.資料庫伺服器資源(未使用過)
6
。還可添加新圖,觀測需要觀測的圖表資料
九.分析性能測試資料
1
Vuser
在方案執行過程中, Vuser 在執行事務時生成資料。使用 Vuser 圖可以確定方案執行期間 Vuser 的整體行為。它們顯示 Vuser 狀態、完成腳本的 Vuser 的數量以及集合統計資訊。將這些圖與事務圖結合使用可以確定 Vuser 的數量對事務回應時間產生的影響。
a. “
正在運行的 Vuser”圖顯示在測試期間的每一秒內,執行 Vuser 腳本的 Vuser 的數量及它們的狀態。此圖可用於確定任何給定環境中伺服器上的 Vuser 負載
b. “Vuser
摘要圖顯示 Vuser 性能的摘要。使用此圖可以查看成功地完成方案運行的 Vuser 的數量與未成功完成 Vuser 數量之比。
2
.錯誤圖
在方案執行期間, Vuser 可能沒有成功地完成所有事務。通過錯誤圖可以查
看有關失敗的、停止的或因錯誤而終止的事務的資訊。使用錯誤圖,可以查
看方案執行期間發生的錯誤的摘要以及平均每秒發生的錯誤數。
3
.事務圖
a.“
平均事務回應時間圖顯示在方案運行期間每一秒內執行事務所用的平均時間。
b
每秒事務數圖顯示在方案運行的每一秒中,每個事務通過、失敗以及停止的次數。此圖可説明您確定系統在任何給定時刻的實際事務負載。您可以將此圖與平均事務回應時間圖進行對比,以分析事務數目對執行時間的影響。
c. “
每秒事務總數圖顯示方案運行的每一秒中,通過的事務總數、失敗的事務總數以及停止的事務總數。
4
Web 資源圖
a.“
每秒點擊次數圖顯示在方案運行過程中 Vuser 每秒向 Web 伺服器提交的HTTP 請求數。借助此圖可依據點擊次數來評估 Vuser 產生的負載量。可將此圖與平均事務回應時間圖進行比較,以查看點擊次數對事務性能產生影響。
b. “
輸送量圖顯示方案運行過程中伺服器上每秒的輸送量。輸送量的度量單位是位元組,表示 Vuser 在任何給定的某一秒上從伺服器獲得的資料量。借助此圖您可以依據伺服器輸送量來評估 Vuser 產生的負載量。可將此圖與平均事務回應時間圖進行比較,以查看輸送量對事務性能產生影響。
c. “
每秒下載頁面數圖顯示方案運行(X 軸)過程中每秒鐘從伺服器下載的網頁數(Y 軸)。可借助此圖依據下載的頁面數來評估 Vuser 產生的負載量。
和輸送量一樣,每秒下載的頁面數表示 Vuser 在給定的任一秒內從伺服器接收到的資料量。但是輸送量圖考慮的是各個資源及其大小(例如,每個 .gif 檔的大小、每個網頁的大小)。而每秒下載頁面數圖只考慮頁面數。
5
.網頁細分圖
a.“
網頁細分圖可以評估頁面內容是否影響事務回應時間。使用網頁細分圖可以分析網站上有問題的元素(例如下載很慢的圖像或中斷的連結)。
6
.用戶定義的資料點圖
7
.系統資源圖
“UNIX
資源圖顯示在方案運行期間度量的 UNIX 資源。此圖可説明您確定 Vuser 負載對各種系統資源的影響。
8
.網路監視器圖
使用網路監視器圖,可以確定網路是否是造成瓶頸的原因。如果網路出現問題,則可以找到故障網段,以便解決該問題。
9
Web 伺服器資源圖
Apache
伺服器圖將伺服器統計資訊顯示為方案已用時間的函數。
10.
摘要
摘要報告提供有關執行方案的一般資訊。列出關於方案運行的統計資訊,並提供指向下列各圖的連結:正在運行的 Vuser、輸送量、每秒點擊次數、每秒 HTTP 回應數、事務摘要和平均事務回應時間。
11
.自己製作測試報告
各種表本身是有許多資料組合,找到你想要的資料,匯出成excel檔形式,可以在excel中做出你想要看見的圖表(曲線圖之類的)。

沒有留言: