簡介
WebLoad是專為測試在大量用戶訪問下的web套用性能而設計的,通過模擬真實用戶的操作,生成壓力負載來測試Web套用的性能。其控制中心運行在Windows XP和Windows 2000及以上版本的作業系統上,負載發生模組(10ad machine)可以運行在Windows、Solaris和Linux作業系統上。模擬出來的用戶流量可支持.NET和J2EE兩種環境。
WebLoad的測試腳本採用JavaScript(和集成的COM/Java對象)來編寫,並支持多種協定,如Web(包括ijax在內的REST/HTTP)、SOAP/XML及其他可通過腳本調用的協定,如FTP、SMTP等,因而可從所有層面對應用程式進行測試。WebLoad同時完全支持DOM(Document Object Model)。用戶創建的是基於JavaScfipt的測試腳本,稱為議程agenda,用它來模擬客戶的行為,通過執行該腳本來衡量web應用程式在真實環境下的性能。在DOM的基礎之上,WebLoad可以將測試單元組織成樹形結構,對Web套用進行遍歷或者選擇性測試。WebLoad還可以錄製用戶訪問Web套用的操作過程,能自動生成測試腳本,當然也可以使用腳本編輯器來手工編輯或修改腳本。
WebLoad可以讓用戶為系統設定可接受的最低性能門限值,同時設定WebLoad採用自增用戶數的循環測試方式進行測試,這樣WebLoad就可以自動測出系統的最大用戶容量了。
WebLoad不僅能測試Web套用性能,還能通過直觀的圖形用戶界面直接連線到資料庫,測試資料庫的性能。它還可以測試多種Interact協定,如FTP、tenet、SMTP,POP等的性能。
WebLoad還可以模擬DOS攻擊,例如模擬諸如Tfn、Tfn2K、Trinoo、Smurf,Flitz、Carko、Omega3、Plague和TCP Flood(SYN、ACK)、UDP Flood、ICMP Flood(Ping、Host-Unreachable)等攻擊。有了該功能後,就可以測試Web系統在面臨DOS攻擊的時候在可用性及反應時間方面的受影響情況。同時WebLoad還提供有關DOS攻擊測試的詳細報告,幫助用戶分析系統漏洞和弱點,為用戶加固系統提供依據。
WebLoad支持絕大多數的套用伺服器和資料庫接口,能讀取它們送出的錯誤和調試信息,如IBM的WebSphere、Sun的iPlanet、BEA的WebLogic、Apache、Oracle、SQL Server等。再結合前端測試結果,WebLoad便能提供全面的Web性能分析報告,使測試人員能夠快速定位瓶頸,發現問題。
測試環境
建立WebLoad測試環境同建立JMeter測試環境類似,都需要一個測試工具和一個待測網址。
(1)從地址http://www.radview.tom下載最新版本的WebLoad。新版本已經開源,可以從Sourceforge上下載原始碼。下載完成後進行安裝,具體安裝過程可參見開源包中的DOCS目錄下的build procedure.txt文檔。
(2)開啟套用伺服器,其中運行著被測網站。然後用測試用例進行測試。
(3)WebLoad的通信設定。配置SNMP協定使多個壓力機之間互相通信:在Windows下進入“控制臺”→“添加刪除程式”→“添加刪除Windows組件”,選擇“管理和監控工具”→“下一步”後選擇Windows安裝檔案路徑,單擊“完成”。
(4)安裝TestTalk。TestTalk在測試會話里負責監測壓力機間的信息傳遞,如果通信不成功則報錯。TestTalk會被自動安裝,測試執行時在後台自動運行,注意不要將它關閉。
測試功能
WebLoad可用於Web應用程式的性能測試與功能測試,可以HTML進行分析。而且,如果測試人員想進行測試工具的開發,那么開源的WebLoad也是不錯的選擇。
WebLoad通過產生可以模擬真實世界的虛擬客戶端來測試Web套用。虛擬客戶端在被測web套用中執行典型的操作來仿效用戶的操作。通過增加虛擬客戶端的數目,測試人員可以增加系統的吞吐量。測試人員創建基於JavaScript的測試腳本(Agenda)來定義虛擬客戶端的行為,WebLoad執行這些測試腳本來監測套用的回響並以圖形和統計來展示,這些展示的測試數據是實時的。
WebLoad與功能確認相結合用於可測量的測試過程中,這樣可以讓測試人員在已定義的裝載條件下,在每個客戶端、每個事務、每個實例級別上準確地確認被測Wcb套用的可測量性與完整性。WebLoad可以保存測試結果,包括從裝載機器到主機硬體執行監控的數據。測試人員可以實時地查看全部或部分數據,或在測試結束後以圖表的形式進行查看。
Webload主要由Agenda Authoring Tool for Explorer(SSL)、Visual AAT、WebLoadConsole、WebLoad Reporter以及Tools(TestTalk和Performance Measurements Manager等)這幾部分程式組成。
利用WebLoad進行測試主要包含以下幾個步驟:①創建一個議程;②使用WebLoad嚮導來配置一個裝載模板;③配置會話選項;④運行一個測試;⑤分析結果。