2014年3月28日 星期五

Jmeter 壓力測試 Session 範例

          Jmeter 是Apache組織的開放源代碼項目,使用Java開發的應用程式,主要用來測試網站功能和網站的受壓力能力及不同的測試下性能情況,詳細說明與安裝請google大神幫忙。
這裡主要的記錄一下,最近關於session的情況,案例如下:  ψ(`∇´)ψ

測量客戶端的壓力測試,主要情況,需要在登入的情況下,其它的api呼叫才有反應,如果沒有先登入就呼叫其它api,會直接被擋下,無法正常測試,因為我們需要登入後,取得session,在下次API呼叫時,要帶入session。    (#゚Д゚)



這裡不教正確做法,因為只記錄成功的情況,詳細的原理、邏輯就google研究。 ヾ(*´∀`*)ノ
為什麼不教正確的呢,因為網路上短時間內我找不到方法,因此我就藉由Badboy的幫忙,
Badboy也是一個測試工具,用c++開發的,主要是因為可以進行腳本錄制,然後腳本可以存成jmeter可以讀取的檔案,因為我透過Badboy的錄制,導入Jmeter後,開始測試,終於成功,
因此記錄一下,每一個參數與資料,有些我也不曉得為什麼這麼做,是從Badboy腳本改的。
1. 首先我們需要新增一個Http Cookie管理員 內容如下:


2.再來定義變數,jsessionid 上google查,其實就是session,存在客戶端的cookie裡,


3.再來就是 head ,像是 Charset、Accept-Language 之類的

4. 有了這些後,再來就是登入api的呼叫,我們會傳入json,如下圖所示,
    直接把json 放入 值中就行了,另外我的例子,編碼不需要打勾,不然對方會收到亂碼,
無法正常解析json。   ( *`ω´)


5. 接下來,就是壓力測試的主要之一,呼叫另一個api,如果沒有先登入,則會要求不到值,
    在這邊如果登入只要一次、評量資訊要1萬次的話,則新增一個迴圈控制器,把 評量資訊被入那個迴圈控制器裡,然後設定1萬次即可


6. 經過上面的設定之後,就可以正常測試需要session的
接下來是呈現一些測試的結果 ~~~

7. 檢視結果樹 - 當我們呼叫api時,會收到回傳值,這部分就在檢視結果樹查看,包含我們要求的一些資料這邊也看的到,像下圖所示,當我們呼叫登入api時,會回傳json的資料回來


8.彙整報告 - 顯示的就是測量結果的一些數據,像是取樣數、錯誤率

9.驗證報告 - 應該就是每一次測量的東西,像登入測了6次、評量一次

10. 監視結果 - 可能是測量過程中,效能的變化用圖表示,可以查看情況

由於是記錄,因此有事見解可能不是很正確。 【o´゚□゚`o】




請尊重著作權. 請勿轉載

沒有留言:

張貼留言