1. 程式人生 > >多執行緒WEB高併發壓力測試軟體JMeter

多執行緒WEB高併發壓力測試軟體JMeter

一、 Apache JMeter工具

  1)簡介

  JMeter——一個100%的純java桌面應用,它是 Apache組織的開放原始碼專案,它是功能和效能測試的工具。JMeter可以用於測試靜態或者動態資源的效能(檔案、Servlets、Perl指令碼、java物件、資料庫和查詢、ftp 伺服器或者其他資源)。

http://blog.csdn.net/yjflinchong/article/details/7853928

  3)Apache 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)。

  二、 JMeter可以做哪些方面的測試

  原先Jemer是為Web/HTTP測試而設計的,但是它已經擴充套件以支援各種各樣的測試模組。它和用於HTTP和SQL資料庫(使用JDBC)的模組一起運送。它可以用來測試靜止資料庫或者活動資料庫中的伺服器的執行情況,可以用來模擬對伺服器或者網路系統加以重負荷以測試它的抵抗力,或者用來分析不同負荷型別下的所有執行情況。它也提供了一個可替換的介面用來定製資料顯示,測試同步及測試的建立和執行。

  三、具體事例

  1)測試環境:

  硬體配置 軟體環境

  測試時間 2004 年 5 月 25 日

  伺服器 P4 512M 記憶體 Oracle

 10g+Tomcat5.5

  客戶端 P4 512M 記憶體 Jmeter

  測試內容 khxx_xg.jsp 接受使用者引數、呼叫 javabean 、輸出相關資訊。

  2)安裝啟動JMeter

  請將下載的.zip檔案解壓縮到C:/JMeter目錄下。現在,請使用C:/JMeter/bin下面的jmeter.bat批處理檔案來啟動JMeter的視覺化介面,下面的工作都將在這個視覺化介面介面上進行操作。圖1就是Jmeter的視覺化介面。

測試計劃的內容:

  1、右鍵單擊測試計劃,選擇新增-〉執行緒組

  線上程組裡設定負載資訊,即執行緒屬性。我向測試計劃中增加相關負載設定是Jmeter需要模擬十個請求者,每個請求者在測試過程中併發請求,並且連續請求10次。

  執行緒數: 10

  Ramp-up period(inseconds): 0

  迴圈次數: 10

  說明:執行緒數代表傳送請求的使用者數目,Ramp-up period(inseconds)代表每個請求發生的總時間間隔,單位是秒。假如我的請求數目是5,而這個引數是10,那麼每個請求之間的間隔就是10/5,也就是2秒。如果設定為0就代表併發請求。Loop Count代表請求發生的重複次數,如果選擇後面的forever(預設),那麼 請求將一直繼續,如果不選擇forever,而在輸入框中輸入數字,那麼請求將重複 指定的次數,如果輸入0,那麼請求將執行一次。

  2、新增HTTP預設請求值

  右鍵單擊執行緒組,選擇新增-〉配置元件-〉HTTP預設請求值,以下是我設定的資訊:

  說明

  名稱: HTTP 預設請求值 該元素的名稱

  伺服器名稱或IP:

  localhost 被測試伺服器的 IP或者名字

  埠號: 8080 伺服器提供服務的埠號,我用的伺服器是 Tomcat,所以埠號是8080

  協議: http 傳送測試請求時使用的協議

  路徑: /hrbin/hg_admin/khxx_xg.jsp 預設的起始位置。

   3、新增HTTP請求

  右鍵單擊執行緒組,選擇新增-〉Sampler-〉HTTP請求,以下是我設定的資訊

  說明

  名稱: HTTP 預設請求值 該元素的名稱

  伺服器名稱或IP:

  localhost 被測試伺服器的IP或者名字

  埠號: 8080 伺服器提供服務的埠號,我用的伺服器是Tomcat,所以埠號是8080

  協議: http 傳送測試請求時使用的協議

  路徑: /hrbin/hg_admin/khxx_xg.jsp 預設的起始位置。

  因為我測試的是查詢,故添加了一個同請求一起傳送的引數(in_id=dsgds):

   4、新增監聽器,存放測試結果。

  右鍵單擊測試計劃,選擇測試計劃-〉新增-〉監聽器-〉聚合報告

  你也可以選擇用表格檢視結果、圖形結果、檢視結果樹等。

  4)執行測試

  單擊執行,選擇啟動。