OpenSTA是一個免費的、開放源代碼的web性能測試工具,能錄制功能非常強大的腳本過程,執(zhí)行性能測試。例如虛擬多個不同的用戶同時登陸被測試網(wǎng)站。
OpenSTA是專用于B/S結(jié)構(gòu)的、免費的性能測試工具。它的優(yōu)點除了免費、源代碼開放的優(yōu)點外,還能對錄制的測試腳本進行,按指定的語法進行編輯。在錄制完測試腳本后,可以對測試腳本進行編輯,以便進行特定的性能指標分析。其較為豐富的圖形化測試結(jié)果大大提高了測試報告的可閱讀性。
OpenSTA 基于CORBA 的結(jié)構(gòu)體系,它通過虛擬一個proxy,使用其專用的腳本控制語言,記錄通過proxy 的一切HTTP/S traffic。通過分析OpenSTA 的性能指標收集器收集的各項性能指標,以及HTTP 數(shù)據(jù),對系統(tǒng)的性能進行分析。
優(yōu)點:壓力測試引擎具有可擴充性,可以完成打規(guī)模的壓力測試。提供腳本語言支持。
OPENSTA安裝
下載OPENSTA安裝包,雙擊安裝即可。
測試入門:
首先打開OpenSta Commander,主界面如下:
該界面主要包括Repository(倉庫),用于存儲測試相關(guān)數(shù)據(jù),單擊倉庫中的相關(guān)內(nèi)容,主視圖回顯示與之相關(guān)的內(nèi)容。
一個完整的測試一般包括3個方面的內(nèi)容,首先錄制測試腳本,然后定制性能采集器,最后把測試腳本和性能采集器組合起來,組成一個測試案例,通過運行該測試案例,獲取該測試內(nèi)容的相關(guān)數(shù)據(jù)。
可通過如下步驟錄制新腳本:
1) 鼠標點“Scripts ”,通過右鍵菜單“New Script ”->“HTTP”生成新腳本,腳本名稱缺省為NEWSCRIP。
2)雙擊新腳本,打開Script Modeler 窗口,在Options菜單中設置Browser 和Gateway,一般情況下,保持Gateway 的缺省設置。
3)按工具欄中的紅色圓鈕,自動打開指定的瀏覽器,輸入需要錄制的系統(tǒng)URL,顯示被測試網(wǎng)站的首頁內(nèi)容。在登陸成功之后,執(zhí)行各個既定的操作步驟。按工具條上的方框按鈕,或直接退出瀏覽器,可以停止腳本的錄制,這是在Script Modeler窗口中將看到被錄制下來的腳本語句。
如下圖
生成性能指標收集器(Collector)
性能指標收集器(Collector)是用戶定義的一組問題,決定在測試過程中哪些性能指標需要記錄。包括兩種類型:
1) NTPerformance Collectors 用于采集運行WinNT 或Win 2000 的主機的性能指標。
2) SNMP Collectors 用于采集主機和其他運行SNMP agent 或proxy SNMP agent 的SNMP 數(shù)據(jù)。
Collector 的設置:
1) 鼠標點“Collectors”,通過右鍵菜單生成新指標收集器,缺省為NEWCOLLECTOR。
2) 通過browse Queries 瀏覽并設置需要收集的性能指標,如下圖
組成測試環(huán)境
在Tests中新建一個NEWTEST,將測試腳本和性能指標收集器拖到該Test 中,如下圖:
按工具欄中的,執(zhí)行測試,測試過程中可以查看“Monitoring”頁簽的內(nèi)容,測試結(jié)束后,該頁簽為空。測試結(jié)束后,點工具按鈕下方的Results頁簽,顯示所記錄的測試結(jié)果數(shù)據(jù),如下圖。
需要注意,OpenSTA是GUI界面,同時也支持命令行、批處理文件,但不支持使用嵌入技術(shù)(如Applets,ActiveX,F(xiàn)lash或javascript),以及通過HTTP/S以外的協(xié)議訪問Web Server。
分布測試:
OPENSTA支持分布測試,可以把測試任務指派到其他機器上運行,前提是另外的機器必須安裝OPENSTA,并且他的NameServer必須運行起來,要在其他機器上運行測試任務,需要在組織測試案例時,設定host屬性,見下圖:
在Host Name設定相應的主機名,然后執(zhí)行該任務即可。
并發(fā)測試:
OPENSTA支持并發(fā)測試,可以模擬多個用戶同時多次發(fā)出http請求,要在機器上運行多個用戶測試任務,需要在組織測試案例時,設定VUs屬性,見下圖:
有關(guān)參數(shù)的解釋見圖示說明.