只談LoadRunner中Unique參數屬性(絕對原創)

發表于:2008-07-08來源:作者:點擊數: 標簽:loadrunnerLoadRunnerLoadrunnerUnique原創
在 LoadRunner 中進行參數化時,Parameter的取值設置有以下相關參數: 取值方式: Sequence:順序 Random:隨機 Unique:唯一 改變(更新)取值的時機: Each Iteration:每次迭代 Each Occurrence:每次出現 Once:只改變一次 (在此,我只討論Unique的參數
LoadRunner中進行參數化時,Parameter的取值設置有以下相關參數:
        取值方式:
Sequence:順序
Random:隨機
Unique:唯一
        改變(更新)取值的時機:
Each Iteration:每次迭代
Each Oclearcase/" target="_blank" >ccurrence:每次出現
Once:只改變一次

(在此,我只討論Unique的參數設置,其他相關參數會在其他文章中詳談)
當我們取值方式選為Unique/更新取值時機選為Each Iteration時,還有一個選項可設置,那就是:allocate Vuser values in the controller:它有兩個選項:1、automatically allocate block size;2、allocate _____values for each Vuser. 因為我們選擇了“每次迭代”更新取值的方式,所以可以指定是由系統自動分配Vuser的參數值數量,還是人為指定為每個Vuser分配的參數值數量。

我們以某網站登錄功能為例來做分析:
先來看一下登錄界面:
登錄
用戶名:        {T_name}
密碼:        {Pwd}
確認密碼:        {Pwd}
登錄        取消

一、我們選擇由系統自動分配Vuser參數值數量的選項,即勾選automatically allocate block size

1、        首先我們準備一些登陸用的數據,包括用戶名,密碼
編號        用戶名:        密碼:
1        T_username01        Pwd01
2        T_username02        Pwd02
3        T_username03        Pwd03
4        T_username04        Pwd04
5        T_username05        Pwd05

2、        分析user的參數值列表、Vuser數和迭代次數的關系:
首先確定我們是使用Vuser來虛擬多個用戶通過調用多個user的參數值來實現模擬操作動作的,那一個Vuser使用的user參數值的多少就會和Iteration迭代的次數有直接關系。好,我們來看下面這個分析表:
解釋格式:(以1*2;2*2;3*1為例)
                以分號分割,表示不同的Vuser:共3個Vuser
                第一位數字表示Vuser的編號:3*1表示第3個Vuser
                第二位數字表示分配得到的user參數值的數量:1*2表示第一個Vuser得到2個user參數值
User參數值的數量
(以5個為例)        迭代次數        最大允許Vuser數        最大Vuser數量下的分配情況
5        1        5        1*1;2*1;3*1;4*1;5*1
5        2        3        1*2;2*2;3*1
5        3        2        1*3;2*2
5        4        2        1*4;2*1
5        5        1        1*5

同樣的分析方法,我們剛剛分析的“最大允許Vuser數量”,實際你可以取小于它的值,比如:
User參數值的數量
(以5個為例)        迭代次數        最大允許Vuser數        最大Vuser數量下的分配情況
5        2        2        1*2,2*2
注:比較和上表中的第二行數據,會發現:當我的每一個Vuser滿足了自己的迭代次數,且參數數量夠分配時,剩下的未用的1個參數就被忽略了
(當user參數值數量小于迭代次數時,具體的分配方式和另一個選項有關:1、中止;2、循環Vuser分配到的列表;3、只循環最后一個列表項;這部分內容放到文章最下面 ^_^ ,現在可以默認選在2上)

同樣,我們可以分析一下10個User參數值的時候
User參數值的數量
(以5個為例)        迭代次數        最大允許Vuser數        最大Vuser數量下的分配情況
10        1        10        1*1;2*1;3*1;4*1;5*1;6*1;7*1;8*1;9*1;10*1
10        2        5        1*2;2*2;3*2;4*2;5*2
10        3        4        1*3;2*3;3*3;4*1
10        4        3        1*4;2*4;3*2
10        5        2        1*5;2*5
10        6        2        1*6;2*4
10        7        2        1*7;2*3
10        8        2        1*8;2*2
10        9        2        1*9;2*1
10        10        1        1*10

由此,我們可以推導出有關User參數值數量、迭代次數和最大允許Vuser數的數學公式:
令:        User參數值數量——ParamNum
                迭代次數————IteraNum
                最大允許Vuser數——MaxVuser
則公式如下:
        當ParamNum%IteraNum=0時                MaxVuser= ParamNum/IteraNum        
        當ParamNum%IteraNum!=0時                MaxVuser= ParamNum/IteraNum+1

二、我們選擇人為分配Vuser參數值數量的選項,即勾選allocate _____values for each Vuser.并在空格中填入數量(我們以2為例來分析)

這種方式要比上面的分析方法簡單些。
1、        還是用上面user的參數值列表為例
2、        分析user的參數值列表、Vuser數和迭代次數的關系:
User參數值的數量
(以5個為例)        迭代次數        Vuser的分配情況
5        1        1*2;2*2
5        2        1*2;2*2
5        3        1*2;2*2
5        4        1*2;2*2
5        5        1*2;2*2
由以上分析我們看到:當我們認為確定了分配給Vuser的參數值數量,那么系統會按照你設定的值去分配,前兩個Vuser每人得到應有的2個參數值,而此 時的Vuser數量如果大于2個地話,那么其他的Vuser是分配不到user參數值的;而且此時的迭代會按照1、中止;2、循環Vuser分配到的列 表;3、只循環最后一個列表項;你的設置去迭代

三、最后一個相關選項:
        When out of values:
1、        中止:abort Vuser
2、        循環Vuser分配到的列表
3、        只循環最后一個列表項

1、現在我們假設選定2;
比如迭代3次時:
假設Vuser1得到的參數值為:T_username01、T_username02
那么迭代結果:T_username01、T_username02、T_username01
迭代4次結果:T_username01、T_username02 、T_username01、T_username02
3、        現在我們選定3:
同樣的迭代3次時:
假設Vuser1得到的參數值為:T_username01、T_username02
那么迭代結果:T_username01、T_username02、T_username02
迭代4次結果:T_username01、T_username02 、T_username02、T_username02


今天就先說到這吧,我想你一定迫不及待的啟動了LoadRunner,來驗證這些理論吧。Just do it!

編者語:
本篇文章是測試時代15期的一個學員寫的,寫的真的很不錯,所以在首頁推薦一下,幫助大家了解參數選擇過程中Unique的過程
學員網絡ID: qinqin_may

原文轉自:http://www.anti-gravitydesign.com

国产97人人超碰caoprom_尤物国产在线一区手机播放_精品国产一区二区三_色天使久久综合给合久久97