Function Helper
可以將生成的Function syntax,複製粘貼到JMeter裏的人一個文本框中。如Http Request name,parm 的 Value。
=======================================================================================
用戶登錄,JMeter可以實現的參數化方法:
1. 利用函數助手獲取參數值
選項->函數助手對話框
__CSVRead,
__Random,
生成的函數字符串:${__Random(,,)}第一個參數爲隨機數的下限,第二個參數爲隨機數的上限,第三個參數爲儲存隨機數的變量名;
${__CSVRead(,)}第一個參數是文件名(包含路徑),第二個參數是文件中的列(列數從0開始);
txt文件如下:
aaa,111
bbb,222
ccc,333
${__CSVRead(C:\Users\text.txt,0)}特點:
1. 一個線程用戶,即使是多次循環,也只選用一個數據。
2.不僅僅只能讀取CSV文件,可以讀取所有的文本文件,txt,excel文件。
__CSVRead:複製生成的參數化函數,打開登陸請求頁面,在右則的參數化中找到我們要參數化的字段,這裏對用戶名和密碼做參數化,第一列是用戶名,列號爲0;第二列是密碼,列號爲1;修改函數中對應的參數化字段列號就可以了,點擊運行會調用相應路徑下的參數文件
2.利用配置元件(CSV Data Set Config)
在http sample裏還是使用${user},${passward}來使用CSV data see config取到的變量。
CSV 數據文件的特點:每個Thread請求都是讀取下一個參數,順序取值。 如果Recycle on EOF = False, Stop thread on EOF = True, 則可以保證每次使用的參數不重複。
Recycle on EOF:是否循環讀入,因爲CSV Data Set Config一次讀入一行,分割後存入若干變量中交給一個線程,如果線程數超過文本的記錄行數,那麼可以選擇從頭再次讀入.
Recycle on EOF與Stop thread on EOF結果的關聯:
當Recycle on EOF 選擇true時,Stop thread on EOF選擇true和false無任何意義,通俗的講,在前面控制了不停的循環讀取,後面再來讓stop或run沒有任何意義
當Recycle on EOF 選擇flase時,Stop thread on EOF選擇true,線程4個,參數3個,那麼只會請求3次
當Recycle on EOF 選擇flase時,Stop thread on EOF選擇flase,線程4個,參數3個,那麼會請求4次,但第4次沒有參數可取,不讓循環,所以第4次請求錯誤