程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> JAVA綜合教程 >> Jmeter 參數化請求實例

Jmeter 參數化請求實例

編輯:JAVA綜合教程

Jmeter 參數化請求實例


Jmeter 參數化請求實例

在jmeter中的請求可以參數化,其中參數化的方式有4種:

1.CSV Data Set Config

2.數據庫

3.用戶自定義變量

4.用jmeter中的函數獲取參數值

第一種方式:CSV Data Set Config

1.創建一個data.txt文件,內容如下:

101010100,北京

101010200,海澱

101010300,朝陽

請求天氣的URL為:GEThttp://www.weather.com.cn/weather/101010100.shtml

2.創建

2.1 線程組

2.2 添加CSV Data Set Config

 

這裡寫圖片描述

 

2.3 HTTP請求

 

這裡寫圖片描述

 

服務器名稱或IP:www.weather.com.cn

協議為: http 方法為:GET

路徑為: /weather/${citycode}.shtml 其中${citycode}是引用CSV Data中citycode

2.4 添加斷言 ——斷言內容為${city} ,是引用CSV Data中city

2.5 添加監控——添加查看結果樹和聚合報告

2.6 運行並查看結果

第二種方式:數據庫

添加:

1.線程組

2.JDBCConnection Configuration

3.JDBC Request 請求 用戶id 為2的用戶名和性別 命令為:select concat(name,sex) from UserInfo where userid="2";

其中concat是把name和password連接起來,然後方便正則表達式進行提取

4.正則表達式提取器

 

\

 

正則表達式填寫:

Apply to: 默認即可

要檢查的字段:主體等選擇,一般選擇主體,即服務器返回給jmeter的頁面主體信息

引用名稱:定義的參數名稱,在後面步驟時可引用

正則表達式:正則表達式中()括起來的部分就是要提取的。

模板:$1$代表只有一組數據,$1$$2$代表有兩組數據

匹配數字:0代表隨機取值,1代表全部取值,通常情況下填0

缺省值:如果參數沒有取得到值,那默認給一個值讓它取

5.針對上一級數據庫請求返回的結果,添加查看結果樹,JDBC Request返回正確後,再新建HTTP請求,引用後置處理器取出的參數 name,引用方式${name}

name sex

liming female

 

\

 

7.針對HTTP請求添加查看結果樹,運行後,查看結果

 

\

 

第三種方式:用戶自定義變量

1.添加HTTP請求,引用 用戶自定義的變量 ${searchword} 和${ts}

 

\

 

2.添加用戶自定義變量( 添加-配置原件-自定義變量)

 

\

 

3. 運行查看結果

 

\

 

第四種方式:使用Jmeter自帶的函數獲取參數值

Jmeter中可以產生值的函數有:__Random( , , ),__threadNum,__CSVRead( , ),__StringFromFile( , , , )

各函數調用方法如下:

1)__Random( , , ),獲取值的方式:${__Random( param1,param2 ,param3 )},param1為隨機數的下限,param2為隨機數的上限,param3為存儲隨機數的變量名,是選填項。所以,也還可以這樣調用此函數:_Random(param1,param2,param3),然後再取param3的值。

2)__threadNum,獲取值的方式:${__threadNum},這個函數沒有任何參數,它用於得到當前運行的線程編號。

3)__CSVRead( , ),獲取值的方式:${__CSVRead(param1,param2)},param1是文件名,param2是文件中的列(列數從0開始)。具體操作見csv數據提取部分的說明。

4)__StringFromFile( , , , ),獲取值的方式:${__StringFromFile(param1,param2,param3)},param1是文件名,param2、param3為選填項:param2—存儲結果的變量,param3—文件開始列,網上找到一點此函數的用法,來自:

1.函數:${_StringFromFile(文件名.dat)}

2.外部文件的格式必須為.dat

3.默認讀取位置為/bin下,也可以自己設定文件存放路徑,如:${_StringFromFile(e:user.dat)},從e盤下讀取user.dat文件中的數據

4.每次讀取文件中的一行

5.如果我有多個user文件,想一起讀取,文件名分別為user1 user2。函數寫為:${_StringFromFile(user#.dat,,1,2)},從默認目錄下讀取user1和user2的文件

6.如果一個文件想讀取多次,可以寫成:${_StringFromFile(user.dat,,,2)},user1文件讀取2次

]

【說明】關於Jmeter的函數使用,可以用Jmeter的函數助手對話框:點擊Jmeter的“選項”,選擇“函數助手對話框”(或者使用快捷鍵“Ctrl+F”),在“選擇一個功能”的下拉框中選擇你所要是有的函數,在函數參數列表的“值”這一欄,填寫好相應的參數值,點擊按鈕【生成】,就可以拷貝生成的函數字符串進行使用了。用函數助手生成函數__Random字符串的截圖。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved