Jmeter之常用參數化方式

參數化就是將腳本中的某些輸入使用參數來代替, 在腳本運行時指定參數的取值範圍和規則, 腳本在運行的時候可根據需要

選取不同的參數值作爲輸入。這種方式在自動化中稱爲數據驅動測試,參數的取值範圍被稱爲數據池(Data Pool)

準備測試腳本

1.添加線程組,參數設置如下圖:

2.線程組下添加配置元件-HTTP請求默認值:協議輸入http   服務器名稱或IP輸入httpbin.org    端口號輸入: 80

參數化:前置處理器-用戶參數

1. 線程組下添加前置處理器-用戶參數

添加變量usernamepassword和對應的三組值

2. 線程組下添加取樣器-HTTP請求

方法選擇GET, 路徑輸入/get

參數:username => 關聯用戶參數中的變量${username}

參數:password => 關聯用戶參數中的變量${password}

3. HTTP請求添加查看結果樹,運行腳本

4. 通過查看結果樹查看請求,三組請求的參數分別爲變量usernamepassword的三組值

參數化:配置元件-用戶定義的變量

1. 線程組下添加配置元件-用戶定義的變量

添加變量useruser_var和變量pwdpwd_var

2. 線程組下添加取樣器-HTTP請求

方法選擇GET, 路徑輸入/get

參數:username => 關聯用戶參數中的變量${user}

參數:password => 關聯用戶參數中的變量${pwd}

3. HTTP請求添加查看結果樹,運行腳本

4. 通過查看結果樹查看請求,參數usernamepassword的請求值分別爲user_varpwd_var

注:配置元件-用戶定義的變量 中定義的參數值在測試計劃執行過程中不能發生取值的改變,因此

一般僅將測試計劃中不需要隨迭代發生改變的參數(只取一次的參數)設置在此處

參數化:配置元件-CSV 數據文件設置

1. 添加測試數據

在電腦上新建data.dat文檔, 記錄三組數據-用戶名、密碼, 用半角英文逗號分隔

2. 線程組下添加配置元件-CSV 數據文件設置

文件名:指保存信息的文件目錄,可以相對或者絕對路徑

文件編碼:選擇utf-8

變量名稱:對應參數文件每列的變量名,用於後面引用的標識符

忽略首行:我們參數化文件,第一行是測試數據,即不需要忽略首行,所以選擇false

分隔符:與參數文件保持一致即可,參數文件使用逗號,我們這裏就填逗號,參數文件使用

是否允許帶引號:是否允許cvs數據被引號包裹, 選擇false

遇到文件結束符再次循環?:這裏選擇True,假如我們有3行數據,但是有4個線程,第4個線程會繼續使用第一行數據循環登錄

遇到文件結束符停止線程?:這裏選擇False,不結束

線程共享模式:4種模式,所有線程,當前線程組,當前線程,自定義

3. 線程組下添加取樣器-HTTP請求

方法選擇GET, 路徑輸入/get

參數:username => 關聯用戶參數中的變量${user_csv}

參數:password => 關聯用戶參數中的變量${pwd_csv}

4. HTTP請求添加查看結果樹,運行腳本

5. 通過查看結果樹查看請求,三組請求的參數分別爲變量user_csvpwd_csv的三組值

參數化:函數助手_CSVRead

1. 線程組下添加函數助手-CSVRead

用於獲取值的CSV文件 | *別名: 取值的文件,寫絕對路徑

CSV文件列號| next| *alias:文件起始列號,0代表第一列,1代表第二列,以此類推

拷貝並粘貼函數字符串:參數化後的參數,複製就可以使用了,比如這裏, “${__CSVRead(G:\參數化\data.dat, 0}”代表我的用

戶名, “${__CSVRead(G:\參數化\data.dat, 1)}”代表密碼

3. 線程組下添加取樣器-HTTP請求

方法選擇GET, 路徑輸入/get

參數:username => 關聯用戶參數中的變量 ${__CSVRead(G:\參數化\data.dat,0}

參數:password => 關聯用戶參數中的變量 ${__CSVRead(G:\參數化\data.dat,1}

4. HTTP請求添加查看結果樹,運行腳本

5. 通過查看結果樹查看請求,三組請求的參數分別爲變量${__CSVRead(G:\參數化\data.dat,0}${__CSVRead(G:\參數化

\data.dat,1}的三組值

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章