【轉】Jmeter應用評估

來源:互聯網
上載者:User

標籤:

Jmeter應用評估

發布時間: 2008-9-03 16:17    作者: 未知    來源: 網路轉載 

字型:  小  中  大  | 上一篇 下一篇 | 列印  | 我要投稿  | 推薦標籤: 效能測試工具 Jmeter

  綜述:

  在用戶端程式上,與LR相比,jmeter只有一個主程式,指令碼設計、情境設計、運行監視、報告結果均在一起完成,沒有獨立的調試器,所以指令碼實際上跟情境是一體的;

  在概念上,jmeter的測試計劃可以對應LR的測試情境,而線程組可以對LR的測試指令碼,與LR不同的是,jmeter的線程組既可以設定各自的並發使用者數,也可以設定各自的已耗用時間;jmeter使用各種取樣器作為請求的發生器,比如我們會經常用到的“HTTP請求”取樣器,可以對應到LR的請求函數“web_url”(get)“web_submit_data”(post);使用邏輯控制器來實現“if”“swith”“for each”“while”來實現邏輯文法;定時器可以實現think time;報表中的Throughput對應LR中的TPS,KB/sec對應LR中的Throughput,這一點可能容易混淆。

  在結構上,jmeter使用各種元件組成指令碼,代碼為樹形結構(.jmx指令碼為xml格式)。

  在功能上,jmeter沒有獨立的調試器,必須運行來進行指令碼的調試;沒有目標情境,但從使用者手冊的說明上來看,應該可以通過元件組合實現目標情境;只有針對回應時間的統計圖形展現,沒有針對事務數的統計圖形展現;資源監視模組只針對tomcat(5以上),解析tomcat的status返回的xml來實現,沒有Linux資源監控。

  指令碼功能:

  利用Proxy 伺服器截取協議包方式,指令碼形式為xml,解析執行,沒有單獨的調試器。Proxy 伺服器可以產生“HTTP請求”取樣器指令碼以及定時器。

  Jmeter指令碼由各種jmeter元件組成。這些元件有:取樣器、配置元件、定時器、邏輯控制器、前置處理器、後置處理器、斷言、報告。

  取樣器:產生壓力的元件,如產生http請求、ftp請求等

  配置元件:與指令碼中的配置有關,如使用者變數、cookies設定、http頭設定等

  定時器:產生延時(think time)

  邏輯控制器:對代碼做邏輯控制,如if條件判斷、for迴圈等

  前置處理器:取樣器操作前的處理,如使用者參數、URL rewrite等

  後置處理器:取樣器操作後的處理,如提取響應資訊(關聯資料)等

  斷言:即檢查點,支援正則

  報告:結果展現,如響應資料、伺服器監控資料等

  參數化檔案:兩種讀取方式——CSV Data Set Config元件和函數:

  CSV Data Set Config元件提供比較豐富的參數設定:編碼方式、分隔字元、迴圈使用、共用模式;這裡有一個注意點:“Allow quote data”選項選為“true”的時候對全形字元的處理出現亂碼。利用設定共用模式可以實現在LR中的“Sequential”和“Unique”,對應選項為:“Sequential”用“Current thread”;“Unique”用“Current thread group”(當前的線程組內)或“All treads”(所有的線程組中)。

  “StringFromFile”和“CSVRead”函數也可以實現讀取參數化檔案,“StringFromFile”的方式類似於“Unique”,而“CSVRead”很特別,是每個線程唯讀取一行作為參數,無論迴圈多少次,各個線程依次讀取。

  其它參數化,函數實現:

  1. 使用線程名作為參數:“threadNum”函數,返回格式為“線程組名稱+空格+線程組編號+橫線+線程編號”;

  2. 使用機器名作為參數:“machineName”函數;

  3. 使用時間作為參數:“time”函數;

  4.使用隨機數作為參數:“Random”函數

  檢查點:jmeter提供的斷言種類很豐富,支援Regex的多種匹配規則。

  壓力產生的元件是取樣器,其中最常用的是“HTTP請求”。利用邏輯控制器元件可以實現條件判斷、迴圈等演算法。

  另外jmeter提供了後置處理器元件建立關聯,常用的是“Regex提取器”元件,提取響應返回的資料產生關聯資料,進行後續處理或用於後面的請求。

  情境設定:

  沒有目標情境

  線程組可理解為LR Controller中的單個指令碼,多個線程組就是多個指令碼,可以通過禁用/啟用操作來控制執行的線程組。

  可以設定逐步增加壓力,也可以設定一次性加壓。

  設定集合點:通過“Synchronizing Timer”這個定時器,可以設定多少個並發使用者集合到一起。

  監控資源:使用“監視器結果”來監控,但目前只支援tomcat(5以上);原理:該功能是通過解析tomcat的管理status返回的xml實現的;監控得到的結果是負載、記憶體、線程。

  可以通過邏輯控制器,以及不同的配置原件來類比不同的業務情境

【轉】Jmeter應用評估

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.