LoadRunner腳本完善連載之二

發表于:2008-08-27來源:作者:點擊數: 標簽:loadrunnerLoadRunnerLoadrunnerloadRunner腳本
出現對話框腳本中注釋的代碼如下: 5.2.4 參數化輸入 如果用戶在錄制腳本過程中,填寫提交了一些數據,比如要增加 數據庫 記錄。這些操作都被記錄到了腳本中。當多個虛擬用戶運行腳本時,都會提交相同的記錄,這樣不符合實際的運行情況,而且有可能引起沖突

出現對話框腳本中注釋的代碼如下:

 

5.2.4 參數化輸入

如果用戶在錄制腳本過程中,填寫提交了一些數據,比如要增加數據庫記錄。這些操作都被記錄到了腳本中。當多個虛擬用戶運行腳本時,都會提交相同的記錄,這樣不符合實際的運行情況,而且有可能引起沖突。為了更加真實的模擬實際環境,需要各種各樣的輸入。

參數化輸入是一種不錯的方法。

用參數表示用戶的腳本有兩個優點:

① 可以使腳本的長度變短。

② 可以使用不同的數值來測試你的腳本。例如,如果你企圖搜索不同名稱的圖書,你

僅僅需要寫提交函數一次。在回放的過程中,你可以使用不同的參數值,而不只搜索一

個特定名稱的值。

參數化包含以下兩項任務:

① 在腳本中用參數取代常量值。

② 設置參數的屬性以及數據源。

參數化僅可以用于一個函數中的參量。你不能用參數表示非函數參數的字符串。

另外,不是所有的函數都可以參數化的。

參數化輸入的講解,我們采用一個例子的方式來進行。

假如有以上的一個提交數據的窗體,我們想參數化高亮顯示的部分(31)。操作方法很

簡單,我們只要選中“31”,然后點鼠標右鍵

選擇“Replace with a parameter. ”,出現以下窗口:

下面我們重點介紹一下參數的類型。

n DateTime:很簡單,在需要輸入日期/時間的地方,可以用DateTime 類型來替代。其屬性設置也很簡單,選擇一種格式即可。當然也可以定制格式。

n Group Name:暫時不知道何處能用到,但設置比較簡單。在實際運行中,LoadRunner使用該虛擬用戶所在的Vuser Group 來代替。但是在VuGen 中運行時,Group Name將會是None。

n Load Generator Name:在實際運行中,LoadRunner 使用該虛擬用戶所在Load

Generator 的機器名來代替。

n Iteration Number:在實際運行中,LoadRunner 使用該測試腳本當前循環的次數來

代替。

n Random Number:隨機數。很簡單。在屬性設置中可以設置產生隨機數的范圍

n Unique Number:唯一的數。在屬性設置中可以設置第一個數以及遞增的數的大小。

注意:使用該參數類型必須注意可以接受的最大數。例如:某個文本框能接受的

最大數為99。當使用該參數類型時,設置第一個數為1,遞增的數為1,但100 個

虛擬用戶同時運行時,第100 個虛擬用戶輸入的將是100,這樣腳本運行將會出錯。

注意:這里說的遞增意思是各個用戶取第一個值的遞增數,每個用戶相鄰的兩次循

環之間的差值為1。舉例說明:假如起始數為1,遞增為5,那么第一個用戶第一

次循環取值1,第二次循環取值2;第二個用戶第一次循環取值為6,第二次為7;

依次類推。

n Vuser ID:設置比較簡單。在實際運行中,LoadRunner 使用該虛擬用戶的ID 來代替,該ID 是由Controller 來控制的。但是在VuGen 中運行時,Vuser ID 將會是 –1。n File:需要在屬性設置中編輯文件,添加內容,也可以從現成的數據庫中取數據(下

面我們將會介紹)

n User Defined Function:從用戶開發的dll 文件提取數據。就目前我認為,這種方式沒有必要。VuGen 支持C 語言的語法,在VuGen 中重新編寫類似的函數應該不難。

(一家之言,僅供參考)

上面的例子中,我們取隨機數即可。

點“Properties… ..”按鈕,進行屬性設置窗口

添入隨機數的取值范圍為(1-50),選擇一種數據格式。在Update Value on 中有以下幾個選項:

n Each Oclearcase/" target="_blank" >ccurrence:在運行時,每遇到一次該參數,便會取一個新的值

n Each iteration:運行時,在每一次循環中都取相同的值

n Once:運行時,在每次循環中,該參數只取一次值

這里我們用的是隨機數,選擇Each Occurrence 非常合適。

下面我們再舉一個file 的例子。我們要用數據庫中的用戶名來參數化登陸用戶名。

選擇要參數化的數據,右鍵,選擇“Replace with a parameter.”,出現以下窗口:

點“Properties… ..”,按鈕,出現以下窗口

注意:參數的文件名不要使用con.dat、pm.dat 或者lpt*.dat 等系統裝置名

下面我們將會連接數據庫,從數據表中選擇用戶名。點“Data Wizard”按鈕

使用第2 項,下一步

添入連接字符串和SQL 語句后,點Finish 按鈕,出現查詢結果。

提醒:在參數數據顯示區,最多只能看到100 行,如果數據超過100 行,只能點“Edit”

按鈕,進入記事本看。

“Select next row ”有以下幾種選擇:

n Sequential:按照順序一行行的讀取。每一個虛擬用戶都會按照相同的順序讀取

n Random:在每次循環里隨機的讀取一個,但是在循環中一直保持不變

n Unique :唯一的數。注意:使用該類型必須注意數據表有足夠多的數。比如

Controller 中設定20 個虛擬用戶進行5 次循環,那么編號為1 的虛擬用戶取前5

個數,編號為2 的虛擬用戶取6-10 的數,依次類推,這樣數據表中至少要有100

個數據,否則Controller 運行過程中會返回一個錯誤。

n Same Line As 某個參數(比如Name):和前面定義的參數Name 取同行的記錄。

通常用在有關聯性的數據上面。

我們這里取值Sequential 即可。

Advance row each iteration 選中即可,表示每一次循環都往前走一行。

手工輸入數據比較簡單,這里就不再單獨介紹了。

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

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