用jmeter進行多用戶併發壓力測試

測試要求以下,多用戶同時登錄web應用程序,並進行操做,查看在多用戶操做下,程序的performence。剛好,jemter下有個CSV Data Set Config,它用來設定一組參數,以便在向程序發出請求時,傳入參數。在進行壓力測試之前,應先將操做過程記錄下來。jmeter有個http prox serve,用它能夠進行記錄。但有個更好的軟件,即badboy,以下圖,web

badboy記錄操做過程

只要輸入請求地址,即可將全部的操用步驟記錄下來,導出jmeter的script,jmeter導入這個sccript就是一個工程了,能夠在裏面對其進行修改參數和添加新的斷言,監聽器等。多用戶的參數文件就在這裏設。併發

 csv

右鍵單擊選擇配置器,一一輸入參數文件地址(便jmeter能找到的路徑),變量名稱(參數引用時就是引用這個變量,用${變量名}進行引用,),參數分隔符(在參數文件中,參數以一行爲一組參數,其間可用;,函數

等隔開,如是tab,用/t),recycle on EOF(文件結束後是否要循環),stop thread on EOF(文件結束是否停止線程)。通常來說,若有n組參數,線程數就設爲n,以下圖,測試

 

可在操做中添加一些斷言,看參數是否用上了,好比一個登錄界面,傳入用戶名和密碼,這個請求完成後,可對response頁面內容進行斷言。url

 

 

在使用Jemeter作壓力測試的時候,每每須要參數化用戶名,密碼以到達到多用戶使用不一樣的用戶名密碼登陸的目的.這個時候咱們就可使用CSV Data Set Config實現參數化登陸:spa

首先經過Test Plan或者Thread Group的Add->Config Element->CSV Data Set Config添加線程



 如下是CSV Data Set Config各個參數的簡要說明:orm

  • FileName:即同目錄下csv文件的名稱
  • File Encoding: 默認爲ANSI
  • Varible Names: 定義文本文件中的參數名,參數之間逗號分隔.定義後可在腳本在以Shell變量的一樣的方式引用
  • Allow Quoated data: 雙引號相關
  • Recycle on EOF: 設置爲True後,容許循環取值
  • Stop Thread on EOF: 當Recycle on EOF爲false而且Stop Thread on EOF爲true,則讀完csv文件中的記錄後,中止運行
  • Sharing Mode: 設置是否線程共享

設置2個線程去運行,結果以下:blog



成功讀取CSV中的參數.
圖片

最後,咱們需知Jmeter還有以下方式能夠進行參數化:

    • User Defined Varibles: 通常對不須要改變的參數進行
    • User Parameters:
    • 經過系統函數: Options->Function Helper Dialog,經過本身輸入參數值,點擊"Generate" 按鈕產生
相關文章
相關標籤/搜索