JMeter快速應用

過去長期用loadrunner做性能測試,但是漸漸覺得有些麻煩了:

1.只能運行在windows環境下,而生產環境幾乎清一色的linux。爲了在同一網段做性能或壓力測試,還需要單獨部署一套windows服務器,比較浪費。

2.loadrunner和瀏覽器版本綁定太嚴格了,比如loadrunner 11,最高就支持到ie9,有時候系統打補丁自動把瀏覽器版本升上去了,就無法錄製腳本了。

3.版權問題也不容忽視,crack帶來的各種風險也是存在的。

於是嘗試了一下JMeter,發現還是相當好用的。在多數web性能測試中,功能也足夠了。總結一下最常用的操作,幫助初學者快速上手。

安裝:

Jmeter的安裝實在是太省心了,就是解壓縮即可。Windows版本通常是zip包,linux版本通常是tar包,只要系統上有JDK,直接解開就可以啓動了。(\bin\jmeter.bat、\bin\jmeter.sh),啓動後是這個界面:



錄製腳本:

和loadrunner的主動啓動被錄製應用不同,Jmeter是啓動一個代理服務器,由瀏覽器設置去使用這個代理服務器,以完成web請求的監控和錄製。所以需要在工作臺右鍵、添加——非測試元件——http代理服務器。


重點是爲代理服務器設置一個和現有應用不衝突的端口。然後在瀏覽器裏設置使用代理服務器,端口就是上述設定好的端口。點擊啓動按鈕,代理服務器就開始工作了。此時通過瀏覽器訪問web站點,所發出的請求就會被記錄下來。

但是如果現在就開始錄製的話,會在上面的列表中列出一大堆,顯得很雜亂。所以先在測試計劃中添加一個線程組。



添加線程組不只爲了看着方便,還有幾個作用:

線程組相當於loadrunner中的一個獨立腳本,多個腳本可以組成一個測試場景。

模擬多用戶時,也是以線程組爲單位進行數量設定和調度設定的。

如上圖中,對這個線程組採用模擬10個併發用戶循環5次執行性能測試。

執行結果要能看到反饋才行,所以在測試計劃中添加監聽器。常用的監聽器有SummaryReport、聚合報告(這兩個非常接近,用一個即可)、察看結果樹等。也有一些圖形化的監聽器用於各自需要的場合。

這樣,一個基本的測試流程(錄製、測試、報告)就完成了。再介紹一下參數化,這也是在性能測試中最常用的,比如各種查詢。所謂參數化就是希望模擬用戶操作的時候採用不同的參數數值。如模擬用戶檢索就希望每個虛擬用戶發出不同的檢索請求,這樣才更能模擬實際情況。

此時需要先準備一個檢索詞列表到一個csv文件中。然後添加一個配置元件——CSVData Set Config,然後指定這個文件路徑,並給每列數據指定一個名稱。



命名之後,就可以在需要的地方,用變量名替換原有的固定字符串了。



當模擬多用戶時,系統會用csv文件裏的內容替換這個變量。

有些時候系統需要session信息來驗證某些狀態,如果沒有發出的話會導致一些錯誤,這個時候添加——配置元件——HTTPCookie管理器就可以了。

常見步驟就是這些,通過調節參數設置,可以更精細地完成多種測試任務。這就需要在實踐中逐步積累經驗了。

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