Action()
{
lr_eval_string("{NewParam}");
lr_eval_string("{NewParam}");
return 0;
}
參數設置:
舉例說明
打開Tools>Create Controller Scenario選項,彈出如下圖,選中Manual Scenario(手工場景),虛擬用戶數爲5個,其他選項使用默認
點擊上圖的OK,打開如下界面
Schedule設置
2、Run-Time Settings->Log,打開日誌
注意:
確保Log options是Always send message,並且選中Parameter substitution,否則在場景日誌中看不到參數取值的結果
3.確認測試結果目錄。打開Results- >Results Settings,設置生成的測試報告所在目錄及對應的結果名。如下圖
4.運行整個場景,單擊Start Scenario按鈕或者按F5鍵。幾秒中後腳本就執行完,到對應目錄下,查看日誌文件(也可以在場景中直接查看),文件名形式:腳本名_用戶編號.log的形式。幾個用戶就會有幾個文件,如果腳本出錯,對應該用戶的日誌就不會生成。
步驟5:在Run Logic中設置迭代次數2,然後運行腳本,接着看不同的取值方式在場景中的效果
注意:如果需要修改場景腳本執行的iteration,必須在Controller的Run- time Settings中進行修改,而不能修改VuGen中的Run-time Settings
順序取值
隨機取值
唯一取值
當選擇Unique取值時,在Parameter List裏面會有一個新的選項,Allocate Vuser values in the Controller,三種情形,分別按如下設置
運行結果:
更改參數配置,添加值:N,如下,再測試
運行結果:
說明:
1、在Unique這種選項下,虛擬用戶之間的取值是不同的,並且遵守唯一性取值,如果用戶分配不到該值,那麼就提示錯誤!
2、Continue in cycle manner:缺少參數值時,循環取值,特別要注意的是,僅在每個用戶獲取到的參數值範圍內進行循環,見上述運行結果,比如Vuser2,獲取到3個參數值,D,E,甲,第一次迭代,獲取DE,第二次迭代,可獲取的參數值僅有甲,還少一個,咋辦?按策略,從頭開始取,取D,這裏的頭不是從A開始的,而是分配Vuser2的參數值中的第一個,同理下面的Continue with the last Value也不是從最後一個N開始的,而是分配給用戶的參數值中的最後一個
3、Aclocate X values for each Vuser:爲每個用戶分配X個參數值,例中,按上述的分配方式,可得到如下圖,即每個用戶分配到的具體參數
4、Automatically allocate block size(自動分配塊):檢查一個腳本有多少次迭代,然後讓用戶根據迭代次數分配該迭代大小的數據塊
更改參數配置如下,繼續測試
運行結果: