JMeter介紹
腳本錄制
運行JMeter進行測試
JMeter主要組件介紹
參數化設置
動態數據關聯
使用命令行運行JMeter腳本
利用XSLT分析JMeter結果文件
JMeter介紹
JMeter, 一個100%的純Java桌面應用,它是Apache組織的開放源代碼項目,它是功能和性能測試的工具。JMeter可以用于測試靜態或者動態資源的性能 (文件、Servlets、Perl腳本、Java對象、數據庫和查詢、ftp服務器或者其他資源)。原先Jmemer是為Web/HTTP測試而設計 的,但是它已經擴展以支持各種各樣的測試模塊。它和用于HTTP和SQL數據庫(使用JDBC)的模塊一起運送。它可以用來測試靜止資料庫或者活動資料庫 中的服務器的運行情況,可以用來模擬對服務器或者網絡系統加以重負荷以測試它的抵抗力,或者用來分析不同負荷類型下的所有運行情況。它也提供了一個可替換 的界面用來定制數據顯示,測試同步及測試的創建和執行。
Jmeter的下載地址:http://jakarta.apache.org/jmeter/usermanual/index.html
JMeter 的特性:
a) 能夠對HTTP和FTP服務器進行壓力和性能測試, 也可以對任何數據庫進行同樣的測試(通過JDBC)。
b) 完全的可移植性和100% 純Java。
c) 完全 Swing 和輕量組件支持(預編譯的JAR使用 javax.swing.*)包。
d) 完全多線程 框架允許通過多個線程并發取樣和 通過單獨的線程組對不同的功能同時取樣。
e) 精心的GUI設計允許快速操作和更精確的計時。
f) 緩存和離線分析/回放測試結果。
g) 高可擴展性:
h) 可鏈接的取樣器允許無限制的測試能力。
i) 各種負載統計表和可鏈接的計時器可供選擇。
j) 數據分析和可視化插件提供了很好的可擴展性以及 以及個性化。
k) 具有提供動態輸入到測試的功能(包括Javascrīpt)。
l) 支持腳本變成的取樣器(在1.9.2及以上版本支持BeanShell)。
腳本錄制
利用BadBoy進行腳本錄制
利用BadBoy錄制JMeter腳本(1)
通過Badboy的官方網站(http://www.badboy.com.au)下載Badboy的最新版本;
安裝Badboy。安裝過程同一般的Windows 應用程序沒有什么區別,安裝完成后你可以在桌面和Windows開始菜單中看到相應的快捷方式——如果找不到,可以找一下Badboy安裝目錄下的Badboy.exe 文件,直接雙擊啟動Badboy;
啟動Badboy,你可以看到下面的界面。
利用BadBoy錄制JMeter腳本(2)
在地址欄(圖中紅色方框標注的部分)中輸入你需要錄制的Web應用的URL——這里我們以http://www.baidu.com 為例 。
點擊 開始錄制 按鈕(圖中藍色圓圈標注的部分)開始錄制。
開 始錄制后,你可以直接在Badboy內嵌的瀏覽器(主界面的右側)中對被測應用進行操作,所有的操作都會被記錄在主界面左側的編輯窗口中(圖中黃色方框標 注的部分)——在這個試驗中,我們在baidu的搜索引擎中輸入 JMeter 進行搜索。不過錄制下來的腳本并不是一行行的代碼,而是一個個Web對象——這有點像LoadRunner的VuGen中的Tree View視圖;
錄制完成后,點擊工具欄中的“停止錄制”按鈕(圖中紫色方框標注的部分),完成腳本的錄制
利用BadBoy錄制JMeter腳本(3)
選擇“File -> Export to JMeter”菜單,填寫文件名“baidu.jmx”,將錄制好腳本導出為JMeter腳本格式。也可以選擇“File -> Save”菜單保存為Badboy腳本;
啟動JMeter并打開剛剛生成的測試腳本,就可以用JMeter進行測試了
利用JMeter的代理服務器功能進行腳本錄制
利用JMeter的代理服務器功能
進行腳本錄制(1)
在測試計劃中添加線程組,在線程組中添加邏輯控制器-錄制控制器。
在工作臺中添加非測試元件-HTTP代理服務器。
端口:即代理服務器的監聽端口,我們設為8080。
目標控制器選擇:測試計劃>線程組;
分組選擇:每個組放入一個新的控制器。
在HTTP代理服務器中添加定時器-高斯隨機定時器(用于告知Jmeter來在其生成的HTTP請求中自動的增加一個定時器)。定時器將會使相 應的的取樣器被延遲。 延時的規則是,在上一個訪問請求被響應并延時了指定的時間后,下一個被定時器影響的取樣訪問請求才會被發送出去。
如果在代理服務器元件里使用了高斯隨機定時器,就應該在其中的固定延遲偏移(Constant Delay Offset)設置項里添上${T}(用于自動引用紀錄的延遲時間)。
代理服務器配置好以后,點擊啟動,代理服務器就會開始記錄所接受的HTTP 訪問請求。
打開瀏覽器,打開Internet選項,將局域網(LAN)設置中的代理服務器設為:localhost,端口為在代理服務器中設的端口:8080。
在瀏覽器地址欄中輸入地址并進行相關的操作進行錄制,錄制完成后, 停止HTTP 代理服務器; 在錄制控制器元件上單擊右鍵將記錄的元件保存為一個文件用于以后重用,另外,不要忘了恢復瀏覽器的代理服務器設置。
運行Jmeter進行測試(1)
腳本錄制完畢后,就可以運行JMeter來進行我們的測試了。
到JMeter的網站http://jakarta.apache.org/site/downloads/downloads_jmeter.cgi
下載JMeter的最新版本,將zip文件解壓縮到D:/JMeter,運行D:/JMeter/bin下的jmeter.bat即可。
打開JMeter會有一個默認的測試計劃,點擊文件-打開,選中錄制的腳本文件如:WebXSample_addUser.jmx,打開腳本進行測試。
在線程組上添加監聽器-聚合報告(用于分析測試結果)后,點擊運行-啟動,開始測試,測試完畢后在聚合報告中就可以看到測試結果。一個簡單的測試計劃就完成了。
原文轉自:http://www.blogjava.net/qileilove/archive/2012/04/09/373628.html