Jmeter簡單應用4

1、簡單函數。數據庫

1. 「_csvRead」函數
        csvRead函數是從外部讀取參數,csvRead函數能夠從一個文件中讀取多個參數。
        下面具體講一下如何使用csvread函數:
        a. 新建一個csv或者text文件,裏面保存要讀取的參數,每一個參數間用逗號相隔。每行表示每一組參數,每列表示每種參數:
    例如:
            admin, 123
            password, 456
        b. 打開Jmeter的函數助手,選擇csvread函數,以下圖所示:dom

    其中:函數

            CSV file to get values from | *alias:要讀取的文件路徑,應該是絕對路徑
            CSV文件列號| next| *alias:從第幾列開始讀取,注意第一列是0
        點擊生成按鈕,生成了函數,在上述中則爲:${__CSVRead(E:"login.txt,1)}csvread就是從login.txt文件中讀取第一列的參數。工具

        c . 將生成的參數拷貝到須要參數化的參數的值一項中,若是要修改要讀取的參數的列,則能夠直接在參數值中修改數字而不用從新在csvread函數生成中修改。測試

        d.jmeter執行的時候,若是有多個線程,順序讀取第一行的數字,若是線程組多餘文件中的行數,則循環讀取。
        e. 利用該功能,能夠實現不一樣參數須要不一樣參數值的問題,只須要在須要參數化的地方將生成的CSVRead函數字符串粘貼過去,而後修改表示第幾列的數字就能夠了。線程

2. 「_ StringFromFile」函數
        這個函數是從一個文件中取到一個字符串,這個函數和LoadRunner中的File變量差很少,orm

區別:字符串

(1)LoadRunner能夠直接從數據庫中查詢記錄,自動生成文件.get

(2)Jmeter須要咱們藉助第三方工具生成文本做用:能夠用來實現參數化http請求發送的參數,使得在Jmeter運行時參數化了的參數在每一個線程讀取不一樣的內容。string

        若是某個參數每次發送請求的時候不能重複才能夠存儲到數據庫中,則用這個功能十分方便。
應用:
        a. 首先須要一個文本文件,能夠手工生成,也能夠經過數據庫查詢工具查出結果,而後拷貝到一個文本文件中。
        b. 點擊Jmeter的「選項」,選擇「函數助手對話框」(或者使用快捷鍵「Ctrl+F」),在「選擇一個功能」的下拉框中選擇「_ StringFromFile」
        c. 設置「_ StringFromFile」函數的值,以下:

  •  輸入文件的全路徑:輸入前面生成的文件的完整路徑,即文件路徑+文件名.擴展名(文件路徑能夠寫成相對路徑或絕對路徑,默認讀取位置爲/bin下)
  • 函數名稱:輸入某個名稱,用於存儲在測試計劃中其餘的方式使用的值。
  • 文件開始結束序號:第三,第四個參數是文件開始的序號,也就是文件讀取的其起始行數。第四個參數是文件的結束序號,也就是要讀取文件的最後行。假如我們生成的文本文件有200行,若是開始序號設置成50,結束行設置成150,那麼這個函數會按順序從第50行,一直讀取到150行,若是測試的循環次數超過了文件行數,好比循環了102次,那麼最後一次循環讀取的文件內容和第一次的同樣,函數會自動循環讀取。文件的起始序號和結束序號也能夠不用設置,這樣函數會從第一行讀取到最後一行,而後再循環讀取。

        d. 注意:該函數每次讀取文件中的一行,若是線程組中有多個線程,則每一個線程順序讀取一行,若是有屢次循環,則每次循環順序讀取一行

3. 「_Random」函數
        這個函數是從某個數字段隨機讀取數據替換參數,能夠利用在測試須要添加多條數據記錄並且某些字段須要惟一性的測試腳本中,隨機生成的參數是數字
        該能夠用來實現參數化http請求發送的參數,使得在Jmeter運行時參數化了的參數在每一個線程去不一樣的隨機數。若是某個參數每次發送請求的時候不能重複才能夠存儲到數據庫中,則用這個功能十分方便。
使用:
        a. 點擊Jmeter的「選項」,選擇「函數助手對話框」(或者使用快捷鍵「Ctrl+F」),在「選擇一個功能」的下拉框中選擇「_Random」。
        b. 配置「_Random」函數,

  • 第一個參數是「一個範圍內的最小值」,即所要取的隨機數的最小值,咱們設置成1;
  • 第二個參數是「一個範圍內的最大值」,即所要取的隨機數的最大值,咱們設置成100;
  • 第三個參數是「函數名稱」,即用於存儲在測試計劃中其餘的方式使用的值,咱們設置成Random。設置好上面的三個參數後,點擊「生成」按鈕,這樣就會在對話框的最下面生成一個字符串「${__Random(1,100,Random)}」,在咱們編寫的腳本中,找到要替換的參數,把它的值換成前面生成的字符串就能夠了,而後每次運行的時候,這個參數會變成一個1到100之間的隨機數。

4. 「_counter」函數

  •  功能:

        這 個函數是一個計數器,用於統計函數的使用次數,它從1開始,每調用這個函數一次它就會自動加1,它有兩個參數,第一個參數是布爾型的,只能設置成 「TRUE」或者「FALSE」,若是是TRUE,那麼每一個用戶有本身的計數器,能夠用於統計每一個線程歌執行了多少次。若是是FALSE,那就使用全局計 數器,能夠統計出此次測試共運行了多少次。第二個參數是「函數名稱」

  • 格式:

            ${__counter(FALSE,test)}

  • 使用:

            咱們將「_counter」函數生成的參數複製到某個參數下面,若是爲TRUE格式,則每一個線程各自統計,最大數爲循環數,若是爲FALSE,則全部線程一塊兒統計,最大數爲線程數乘以循環數

5. 「_time」函數

  • 功能:

        Jmeter運行時取當前時間到變量,利用該功能,能夠將某個參數增長time函數,而後用該參數做爲查詢條件查詢,而後以該參數做爲斷言,這樣可使得斷言更精確,由於時間實時變化的,使用該方法,須要注意的是,要先添加一個全局的用戶參數,具體在斷言操做中有描述。

  • 格式:

            ${__time(MMddmmss,TEST)}

  • 使用:

            添加jmeter的time函數,選擇選項——函數助手,而後選擇__time函數,以下圖所示:
在「ormat string for SimpleDateFormat (optional)」中輸入值「MMddhhmmss」,表示取月日時分秒。
而後,點擊生成,則生成了time參數。

6. 「_intSum」函數

  • 功能:

        用於計算多個整數的和,能夠是計算正整數和負整數的和,它有N個參數,最少有3個參數,最多不限。最後一個參數是函數名稱,前面的其它參數是要求和的整數。這個函數在函數對話框中只顯示3個參數,若是要計算多個整數,能夠經過添加參數實現,不過最後一個參數必定要是函數名稱。再添加的參數會在函數名稱後面,這個時候,須要咱們手動將函數名稱參數放到最後一個。 格式:${__intSum(1,100,test)}

相關文章
相關標籤/搜索