一:性能測試工具模型
廣義地說,性能測試工具是指性能測試過程中使用到所有工具,但是我們習慣上把“性能測試工具”定位于LoadRunner、SilkPerformer一類的工具。
關于性能測試的幾個誤區:
1、認為性能測試就是使用性能測試工具進行測試。
性能測試工具只能幫助你實施性能測試,并不能幫助你完成性能測試的需求、設計和分析。
2、認為性能測試工具可以完成性能測試結果分析工作。
性能測試工具只是能夠根據你的要求以各種方式提供報表,這些報表可以被您用來分析系統性能狀況。
3、不清楚性能測試工具的錄制/回放與功能測試工具的錄制/回放的區別。
功能測試工具的錄制/回放一般是針對GUI的操作錄制,腳本中記錄的是用戶對控件的操作,例如按下了“確認”按鈕或是在“姓名文本框”中輸入了ABCD等內容,這時因為功能測試工具主要是通過操作和數據來驗證功能的正確性,評價的主要標準是GUI的正確性(界面內容的正確性)。而性能測試工具錄制的是服務端和應用之間的通信數據,而不是應用的GUI操作。^_^^_^理解了這一點,就不難明白為什么在進行性能測試腳本錄制的時候,需要首先選擇錄制的協議了。
4、不清楚何時選擇何種協議。
選擇何種協議取決于應用和客戶端之間的通信協議。
二:性能測試工具架構
1、虛擬用戶腳本產生器(Virtual User Generator):通過一個Proxy作為客戶端和服務器之間的中間人。
2、壓力產生器(Player):壓力器扮演著“產生負載”的角色。
3、用戶代理(Agent):運行在負載機(LoadMachine)上的進程,該進程于產生負載壓力的進程或是線程寫作完成“產生負載”的功能。如一臺PC可以順利運行200個左右的VU,但對需要1000個VU的情況顯然很難指望一臺PC,這時就需要通過多臺及其進行協作,“用戶代理“就幫助產生”步調一致“的VU。
4、壓力調度和監控系統(Conductor):直接與用戶交互的主要內容,壓力調度可以根據用戶的場景要求,設置各種不同腳本的VU數量,設置同步點等,而監控系統則可以對各種數據庫,應用服務器、服務器的主要性能計數器進行監控。
5、壓力結果分析工具(Analysis):用來輔助進行測試結果的分析。
三:性能測試腳本錄制時的協議類型
^_^^_^不要想當然地根據開發語言來決定協議的選取,這樣子極有可能導致錄制后的腳本不能回放成功。
幾點說明的內容:
1、使用Socket協議可以對任何類型的應用通信進行錄制,但這種錄制生成的腳本很可能沒有任何意義。
2、在對應用間的通信進行錄制生成腳本后,對腳本進行回放,有時會出現回放無法繼續的情況(停留在某個步驟無法進行下去),此時應該考慮是否使用了合適的協議。
文章來源于領測軟件測試網 http://www.kjueaiud.com/