參數化
當多個虛擬用戶運行腳本時,都會提交相同的記錄,這樣不符合實際的運行情況,而且有可能引起衝突。爲了更加真實的模擬實際環境,需要各種各樣的輸入。參數化是一種不錯的方法。
參數類型
1.內部數據參數類型
-
DateTime:在需要輸入日期/時間的地方,用DateTime類型來替代。其屬性設置很簡單,選擇一種格式即可。也可以定製格式。
-
Group Name:Vuser 組名稱。如果沒有 Vuser 組(例如,從 VuGen 運行腳本時),則該值始終爲無。
-
Load Generator Name:在實際運行中,LoadRunner使用該虛擬用戶所在Load Generator的機器名來代替。
-
Iteration Number:在實際運行中,LoadRunner使用該測試腳本當前循環的次數來代替。
-
Random Number:隨機數。在屬性設置中可以產生隨機數的範圍。
- Vuser ID:場景運行期間由 Controller 分配給 Vuser 的 ID 編號。從 VuGen 運行
- File:將參數保存在文件中。可以是本地的也可以是全局的。數據文件中的數據以表的格式存儲。一個文件可以包含許多參數的值。每列保存用於一個參數的數據。分列符由分隔符標記,如逗號。使用 VuGen 新建文件或導入數據庫文件。每個參數填充一個單元格值。
- Table:專用於通過填充表單元格值進行測試的應用程序。使用多行和多列作爲參數值,類似於值數組。使用表類型時,可以用一個命令填充整個表。這在 SAPGUI Vuser 中很常見,其中 sapgui_table_fill_data 函數填充表單元格。
- XML:用作 XML 結構中包含的多值數據的佔位符。可以使用 XML 類型的參數將整個結構替換爲單個參數。
- 使用外部 DLL 函數生成的數據。用戶定義的函數將參數替換爲外部 DLL 函數返回的值。將用戶定義的函數作爲參數分配之前,應創建帶有函數的外部庫 (DLL)。
參數化——從數據庫導入參數數據
a.選擇要參數化的數據,右鍵,選擇“Replace with a parameter”
b.點擊“Parameter Properties…”按鈕
c.連接數據庫,從數據表中選擇用戶名。點擊“Data Wizard”按鈕。
d.進行下一步添加數據源後。
e.輸入連接數據庫的連接字符串以及數據檢索語句後,點擊“Finish”。(注意:此處若選擇“機器數據源”,則應該將生成的Connection string中的“MODE=SHARE”刪除。否則會報“Data Retriever failed to execute query.”錯誤,參數化失敗。因爲機器數據源是本機專用,不能共享。)
f.進一步設置參數化讀取數據的方式;
注意: LoadRunner允許最大參數化用戶數爲100人,如需擴大參數量,可在安裝路徑下vugen.ini文件中修改:MaxVisibleLines=1000。(此爲設置允許最大參數化用戶數爲1000人)
“Select next row”有幾種選擇:Sequential、Random、Unique。
“Update value on”有幾種選擇:Each iteration、Each occurrence、Once。
組合類型:
Sequential
- 與Each iteration組合:將爲每次跌倒從數據表中提取下一個值。
- 與Each occurrence組合:將爲每一次參數的出現從數據表格中提取下一個值,即使它在同一次迭代中。
- 與Once組合:第一次迭代中分配的值就會在每個Vuse接下來所有的迭代中使用。
Random
- 與Each iteration組合:將會爲每一次迭代從數據表中提取一個新的隨機值。
- 與Each occurrence組合:將會爲每一次參數的出現從數據表中提取一個新的隨機值,即使它在同一次迭代中。
- 與Once組合:第一次迭代中分配的隨機值就會在改Vuser的所有迭代中使用。
Unique
- 與Each iteration組合:將會爲每一次迭代從數據表格中提取下一個唯一值。
- 與Each occurrence組合:將會爲每一次參數的出現從數據表格中提取一個新的一直,即使它在同一次迭代中。
- 與Once組合:第一次迭代中分配的唯一值就會在每個Vuser的所有接下來的迭代中使用。