Jmeter體系架構

jmeter基本原理是建立一個線程池,多線程運行取樣器產生大量負載,在運行過程中通過斷言來驗證結果的正確性,通過監聽器來記錄測試結果。如果取樣器中有參數化的需求,可以通過配置元件或者前置處理器來完成。如果有關聯需求,可以通過後置處理器來完成。如果我們想要設置運行場景,比如模擬多少用戶,運行多長時間,就設置線程組。如果我們想要模擬併發場景,可以利用定時器來設置;如果我們想要控制業務的執行邏輯,比如登錄只運行一次,我們可以用控制器來完成。

  • 取樣器

取樣器的訪問路徑:【測試計劃】——【線程組】——【Sampler】

  • 斷言

斷言用來驗證結果是否正確,預設一個結果(值、表達式、時間長短等條件)與實際結果匹配,匹配到則成功,反之失敗。

斷言的訪問路徑是:【測試計劃】——【斷言】

  • 監聽器

Jmeter的測試結果需要監聽器來收集,監聽器:①添加結果監聽,並且可以保存測試結果到文件,這些結果數據可以供再次分析使用;②展示結果,Jmeter可以以表格及圖形的形式展現結果,方便測試人員分析測試結果。

監聽器的訪問路徑:【測試計劃】——斷言

  • 前置處理器

請求發送前做一些環境或者參數的準備工作,可以在前置處理器中來完成這些工作。比如,我們對數據庫進行操作前需要先建立一個數據庫連接,那麼前置處理器就可以完成這個功能。

前置處理器的訪問路徑:【測試計劃】——【前置處理器】

  • 配置元件

性能測試中爲了模擬大量用戶操作我們往往需要做參數化,Jmeter的參數化可以通過配置元件來完成,比如CSV Data Set Config,它可以幫助我們從文件中讀取測試數據。配置元件也可以用來記錄服務器的返回數據,比如Http Cache Manage,自動記錄服務器返回的Cache信息。

配置元件訪問路徑:【測試計劃】——【配置元件】

  • 後置處理器

後置處理器一般放在取樣器之後,用來處理服務器的返回結果。比如登錄web後服務器會返回一個SessionID,Jmeter可以通過正則表達式提取數據。

後置處理器訪問路徑:【測試計劃】——【後置處理器】

前置處理器、配置元件、後置處理器都是爲取樣器提供數據支持的,取樣器關注的是業務邏輯。

  • 控制器

控制器的訪問路徑:【測試計劃】——【邏輯控制器】

  • 定時器

爲了足夠真實地模擬用戶負載,我們有時需要模擬請求在同一時刻發送,Jmeter可以通過定時器來完成這個需求。定時器種類有很多。

訪問路徑:【測試計劃】——【線程組】——【定時器】

  • 線程組

在線程組中可以設置運行的線程組(模擬多用戶,一線程一用戶),還可以設置運行時長、定時運行等。

訪問路徑:【測試計劃】——【Threads(Users)】

  • Test Fragment

這是一個輔助的元件,在此節點下面幾乎可以放置任何Jmeter測試元件,但它一般不會被運行。①在腳本開發過程中可以用它來備份文件,②下面的元件可以被模塊控制器調用,可以利用它來模塊化請求供模塊控制器調用。

  • 工作臺

不直接參與運行,①運行Jmeter錄製Http協議腳本時就用到它,我們可以在它下面建立一個HTTP代理服務器元件,設置代理信息然後進行錄製;②設置服務器監控(HTTP Mirror Server);③顯示當前Jmeter屬性信息;④備份腳本。

 

 

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