天天看點

伺服器壓力測試之JMeter篇(二)

前言

在上一篇《伺服器壓力測試之JMeter篇(一)》中我簡單的介紹了一下JMeter的下載下傳安裝以及基本使用,在這一節中我将給大家說一說JMeter如何通過讀取參數化進行web調試。

說之前先放出JMeter的官方文檔:http://jmeter.apache.org/usermanual/index.html,每次看官方文檔都是件勞民傷身的活,但是就是如此還必須耐下性子來去閱讀,不僅僅涉及到英語水準的提高,更能幫助你更深的了解一門技術。要想更加深刻的學習JMeter的使用還請移步官方文檔,我這裡就不細說了,因為我也還沒看懂文檔。

JMeter參數化

首先還是先說說什麼是參數化。這裡我舉個栗子,當我們在進行使用者登入測試時會涉及的許多不同手機号和密碼的輸入,在沒有參數化的前提時,我們就需要為每一個登入都建立一個http請求,然後再在每一個http請求你中輸入手機号以及密碼,這一聽就知道是件麻煩事,是以,JMeter參數化閃亮登場。

當我們使用參數化時,直接在一個

dat

資料檔案中輸入需要登入的手機号以及密碼,然後建立一個http請求,通過這個請求可以實作循環讀取資料檔案,避免了為每一次登入都建立一個http請求。

JMeter參數化讀取有四種種方式,可以利用函數助手獲得參數,也可以利用CSV資料檔案設定(csv data set config)讀取參數,這裡我隻介紹csv data set config方式,因為這種方式較其他方式而言比較常用,感興趣的可以去問問度娘其他方式的使用。

建立

xx.dat

檔案

不同參數之間我使用英文逗号隔開,需要敲黑闆的地方是,CSV Data Set Config對于參數化的要求比較嚴格,是以在設定編碼格式方面一定要選擇utf8。

伺服器壓力測試之JMeter篇(二)
添加線程組

建立完資料檔案後就可以添加線程組和結果樹了,具體添加方法請點選這裡,這裡需要對http請求參數進行如下修改:

伺服器壓力測試之JMeter篇(二)
添加CSV資料檔案設定

添加方式:在添加的http請求上右鍵後選擇配置元件中的CSV資料檔案設定。

伺服器壓力測試之JMeter篇(二)

- 遇到檔案結束符再次循環:是否循環讀取參數檔案内容。因為CSV Data Set Config一次讀入一行資料,分割後存入若幹變量中交給一個線程,如果線程數超過文本的記錄行數,那麼可以選擇從頭再次讀入;

- 當遇到檔案結束符再次循環為false,遇到檔案結束符停止線程為true時,如果此時有4個線程請求,3個資料參數,那麼會執行3個http請求

- 當遇到檔案結束符再次循環為false,遇到檔案結束符停止線程為false時,如果此時有4個線程請求,3個資料參數,那麼仍會執行4個http請求,但由于不會循環讀取資料檔案,是以第四個線程會發生請求錯誤

運作

這裡我一共添加了4個線程并發執行登入,每個線程循環一次,可以看到一共發起了5個http請求,其中199開頭的使用者因為資料檔案讀取結束而循環讀取了一次。

伺服器壓力測試之JMeter篇(二)

最後

通過參數化我們可以很友善進行http請求,并且有利于以後的調試。但是不要去随意去測試别人網站能承受的壓力,有時這帶來的後果是我們無法預知的。

更多文章請關注我的個人部落格:www.zhyocean.cn

繼續閱讀