JMeter中的測試元件

JMeter中的測試元件

來自專欄 李小期的學習筆記最近在學習JMeter,在看 零成本實現Web性能測試:基於Apache JMeter和Gatling ,由於本文中的一部分內容都是從這本書中摘抄的,因此把書名上了,將書中比較重要的知識總結下來,方便自己學習。

剛打開JMeter時的界面如下:

左側有兩個 「測試元件」,分別是 測試計劃(Test Plan) 工作台(WorkBench),咱們分別來了解一下。

1. 測試計劃(Test Plan)

測試腳本整體呈現為一顆「樹」的形式,我們可以稱它為「測試樹」,測試計劃是JMeter測試腳本的根節點,關於整個測試腳本的一些基礎設置,可以在測試計劃中設定,例如用戶定義的變數。

2.工作台(WorkBench)

工作台用來保存暫時不使用的測試元素,當測試人員保存測試計劃時,工作台中的內容不會被一起保存。

3.線程組(Thread Group)

線程組定義了一個虛擬用戶池,其中每一個虛擬用戶都使用同樣的測試腳本,類似於LoadRunner中的Vuser。

線程組(Thread Group)中的線程,就是我們的 「虛擬用戶」,我們要模擬多少個虛擬用戶訪問伺服器,就需要在線程組裡設置有多少個線程。

線程組的界面如下圖:

在 「線程屬性」 那一欄,可以設置:

  • 設置線程的數量

  • 設置ramp-up周期

  • 設置測試執行的次數

每一個線程都會完全和獨立的執行測試計劃而不影響其他線程。多線程可以用於模擬到

你的伺服器程序的並發連接,每一個線程,就是一個 「虛擬用戶」 。

參數Ramp-Up Period告訴Jmeter達到最大線程數需要多長時間。假定共有10個線程,Ramp-Up Period為100秒,那麼JMeter就會在100秒內啟動所有10個線程,並讓它們運轉起來。每個測試線程都會在上一個線程啟動10秒之後才開始運行。假定共有30個線程,Ramp-Up Period為120秒,那麼線程啟動的間隔就為4秒。

Ramp-Up Period的值不能設置得太短,否則在測試的初始階段會給予伺服器過大的壓力,很有可能導致伺服器掛掉。Ramp-Up Period的值也不能設置得太長,否則就會發生第一個線程已經執行完畢,而最後一個線程還沒啟動起來。

可以設置Ramp-Up Period的值 = 匯流排程數,即每一秒,啟動一個新線程。

默認的,線程組被設定成只執行一遍。我們可以設置線程組循環的次數。

4.採樣器(Sampler)

採樣器是JMeter測試腳本的基礎單元,用戶可以用它向伺服器發出一個特定的請求,採樣器會在超時前等待伺服器的響應。

測試中,常用的是HTTP請求,先說HTTP請求。

通過該測試元件,JMeter可以發送一個HTTP/HTTPS請求到Web伺服器


推薦閱讀:

乾貨—Go語言編寫單元測試
面試軟體測試的幾個問題(一)
測試人的成長心路--獻給同樣為測試掙扎的你!
軟體測試的具體概念有哪些?
搭建Robotframwork+Python+Selenium自動化測試環境(包括Jython)

TAG:軟體測試 | jmeter | 性能測試 |