天天看點

回顧Jmeter壓力測試(二)

回顧Jmeter壓力測試(二)

主要介紹的菜單為常用菜單,對于個人不常用的功能會進行忽略。

回顧Jmeter壓力測試(二)

測試計劃菜單介紹

回顧Jmeter壓力測試(二)

線程(使用者)

  • 線程組:線程組元素是任何測試計劃的起點。所有控制器和采樣器必須線上程組下
  • setUp Thread Group:一種特殊類型的ThreadGroup的,可用于執行預測試操作。這些線程的行為完全像一個正常的線程組元件。不同的是,這些類型的線程執行測試前進行定期線程組的執行。
  • teardown thread group:一種特殊類型的ThreadGroup的,可用于執行測試後動作。這些線程的行為完全像一個正常的線程組元件。不同的是,這些類型的線程執行測試結束後執行定期的線程組。
這裡可能還是不太懂,可以參考junit的setup ,teardown
回顧Jmeter壓力測試(二)

配置元件

配置元件(config element)用于提供對靜态資料配置的支援。CSV Data Set config 可以将本地資料檔案形成資料池(Data Pool),而對應于HTTP Request Sampler和 TCP Request Sampler等類型的配制無件則可以修改Sampler的預設資料。(例如,HTTP Cookie Manager 可以用于對 HTTP Request Sampler 的cookie 進行管理)

監聽器:

回顧Jmeter壓力測試(二)

監聽器,顧名思義就是用來監聽測試結果的,可以看到對應的請求需要配置不同的監聽器。最常用的功能是 檢視結果樹,聚合報告等,在後續的功能介紹中會進行具體的使用:

定時器:

回顧Jmeter壓力測試(二)

定時器個人沒有進行過實踐,略過。。。。。

前置處理器:

回顧Jmeter壓力測試(二)

用于在實際的請求發出之前對即将發出的請求進行特殊處理。例如,HTTP URL重寫修複符則可以實作URL重寫,當RUL中有sessionID 一類的session資訊時,可以通過該處理器填充送出請求的實際的sessionID 。

後置處理器:

回顧Jmeter壓力測試(二)

用于對Sampler 送出請求後得到的伺服器響應進行處理。一般用來提取響應中的特定資料(類似LoadRunner測試工具中的關聯概念)。例如,XPath Extractor 則可以用于提取響應資料中通過給定XPath 值獲得的資料。

斷言:

回顧Jmeter壓力測試(二)

斷言用于檢查測試中得到的相應資料等是否符合預期,斷言一般用來設定檢查點,用以保證性能測試過程中的資料互動是否與預期一緻。

請注意,斷言适用于其​​範圍内的​​所有采樣器。要将聲明限制為單個采樣器,請将該聲明添加為采樣器的子代。

測試片段:

“測試片段”元素是一種特殊類型的​​控制器​​​,它與線程組元素位于同一級别的“測試計劃”樹上。它與線程組的差別在于,除非​​子產品控制器​​​或​​Include_Controller​​引用它,否則它不會執行。該元素僅用于測試計劃中的代碼重用

非測試元件:

可以在這裡找到對應的Http代理伺服器設定,可以配置http代理,友善進行代理伺服器進行并發測試。

各元件啟動順序:

  1. 配置元素
  2. 預處理器
  3. 計時器
  4. 取樣器
  5. 後處理器(除非SampleResult為​

    ​null​

    ​)
  6. 斷言(除非SampleResult為​

    ​null​

    ​)
  7. 偵聽器(除非SampleResult為​

    ​null​

    ​)
請注意,計時器,斷言,預處理器和後處理器僅在有适用于其的采樣器時才進行處理。邏輯控制器和采樣器按照它們在樹中出現的順序進行處理。其他測試元素将根據其發現範圍和測試元素的類型進行處理。[在一個類型内,元素按照它們在樹中出現的順序進行處理]。

線程組的菜單介紹:

取樣器:

回顧Jmeter壓力測試(二)

采樣器告訴JMeter将請求發送到伺服器并等待響應。它們按照在樹中出現的順序進行處理。控制器可用于修改采樣器的重複次數。

JMeter采樣器包括:

  • FTP請求
  • HTTP請求(也可用于SOAP或REST Web服務)
  • JDBC請求
  • Java對象請求
  • JMS請求
  • JUnit測試請求
  • LDAP要求
  • 郵件要求
  • 作業系統程序請求
  • TCP請求

切記在測試計劃中添加一個偵聽器,否則最終的結果是看不到的

邏輯控制器:

回顧Jmeter壓力測試(二)

邏輯控制器使您可以自定義JMeter用于确定何時發送請求的邏輯,為了了解邏輯控制器對測試計劃的影響,考慮以下測試樹

  • Test Plan
  • Thread Group
  • Once Only Controller
  • Login Request (an​​HTTP Request​​)
  • Load Search Page (HTTP Sampler)
  • Interleave Controller
  • Search "A" (HTTP Sampler)
  • Search "B" (HTTP Sampler)
  • HTTP default request (Configuration Element)
  • HTTP default request (Configuration Element)
  • Cookie Manager (Configuration Element)