Jmeter(六)Jmeter腳本包含要素及書寫習慣

 

  Jmeter有豐富的組件,邏輯控制器、配置原件、Sampler、定時器、前置處理器、後置處理器、斷言、監聽器;而編寫腳本必定要養成我的習慣,讓人看到Jmeter的腳本目錄結構樹可以一目瞭然;所以,首先須要瞭解的是協議、以及Jmeter的元件執行順序來做爲參考,養成本身的書寫習慣。線程

  嗯。。關於協議部分,在協議分類隨筆中進行記錄,本篇就書寫習慣以及一個完整的Jmeter腳本應該包含什麼作以記錄。調試

  Jmeter組件執行順序:(摘自《全棧Jmeter》)blog

    一、配置原件(若是存在)百度

    二、前置處理器(若是存在)配置

    三、定時器(若是存在)渲染

    四、取樣器(若是存在)循環

    五、後置處理器(若是存在且取樣器的結果不爲空)全棧

    六、斷言(若是存在且取樣器的結果不爲空)request

    七、監聽器(若是存在且取樣器的結果不爲空)定時器

  而一個完整的Jmeter(此處以HTTP協議爲例)腳本應該包含哪些組件呢?

  衆所周知,HTTP協議結構(request)中包含請求頭、請求行、請求數據,那麼在Jmeter中實現HTTP請求也必然須要進行模擬一個完整的請求才能獲得響應。而在編寫Jmeter腳本的時候便須要養成良好的習慣,結構樹一目瞭然,不管是工做,仍是須要其餘人來解決問題,相信都能快速的定位。所以,須要將Jmeter的組件執行順序以及協議結構相結合,組成一個完整的腳本。

  

  OK,一個簡單的訪問百度頁面的例子就OK了,固然直接訪問百度首頁不須要任何參數,所以下方請求數據不須要填寫;值得一提的是此處的協議和端口號,若是在協議處填寫https,那麼端口號是能夠不填的,由於它會本身默認爲443(https的默認端口號);固然,直接填寫http,後邊的端口號也會默認爲80的。

  固然,此處例子中在「HTTP信息頭管理器」中是什麼都沒有填寫。能夠在下方的監聽器看得出來:

  

  至於在什麼狀況下會加入信息頭信息,信息頭中涉及到哪些信息,見下文;

  能夠從上圖看得出來,一個完整的Jmeter腳本至少要包含一個線程組、一個請求,監聽器;線程組可進行設置循環、線程數;Sampler中配置請求地址、協議、參數等;監聽器來進行監聽請求以及響應內容;

  

  能夠切換查看的響應方式,吶、這個就是百度的原始頁面了;能夠看到的是並無HTML、CSS等頁面渲染元素;

  So,這即是一個完整的HTTP請求的Jmeter腳本。

  能夠看得出來,(除去線程組)是將配置原件放在了第一位,接着是請求,監聽器;並無像錄製的腳本同樣,將信息頭一類的配置元件放入Sampler下一級,調試都不容易,試着找個問題都眼花繚亂。

  所以,自行編寫時必定要養成良好的習慣,最起碼是要有調試方便,井井有條的優勢。

相關文章
相關標籤/搜索