lr參數化取值與連接數據庫


TXT文本,EXCEL表格以及數據庫中的表都可以作為參數的數據集載體,LR都是支持的。

 

特別提醒:

1.在形成數據池之后,數據庫中的數據變化不會影響數據池中的數據。

2.數據文件一定要以一個空行結束,否則,最后一行輸入的數據不會被參數所使用。

3.一般我們用到的很多的都是使用數據文件來保存我們的參數。一般來說LR對於參數的個數是沒有限制的,但是在那個Parameter List中顯示的就只能顯示100個。so當你看到顯示在列表中的參數個數少於你的文件中保存的個數,不用緊張。

 

一.介紹LR參數化數據源Orac le,MSSQL,Excel

1. 數據來源Oracle向導,選擇“Data Wizard”創建,如圖:

 

2. 數據來源MSSQL向導

與Oracle不同的是:

 

3. 數據來源Excel向導

與Oracle不同的地方:選擇Excel Files

輸入查詢語句:

注意:經常會出現以下錯誤:

解決辦法:重新再創建一次就可以了。

 

二、介紹兩種參數化的區別

一種會初始化數據,另一種不會初始化數據

具體如圖:

1.右鍵選擇“Replace with a Parameter”這種,會默認初始化數據。

 

2.點擊工具欄中的parameter list,不會初始化數據。

 

三. 參數化取值

select next row指明了以何種方式從數據池中獲取數據

選項:

Sequential 表示按照順序取值

Random表示從數據池中隨機取值

Unique.表示每次取唯一值

 

Update value on 指明了參數值在何時發生變化。

選項:

Each iteration表示在每次跌代時更新參數的值。如果在一個迭代過程中某參數出現了多次,參數取相同的值

Each occurrence表示在參數每次出現時更新參數的值。如果在一個迭代過程中某參數出現了多次,每次取不同的值。

Once表示VU在執行時,只在第一次跌代時為參數取一次值,以后每次跌代使用相同的值。

 

根據select next row和Update value on的不同設置組合,VU運行過程中為參數取不同的值,下面舉例說明:

假設在某個類型為File的參數Username設置如下表1所示的數據池,該參數所在的腳本中包含該參數的部分要求迭代2次,執行腳本的VU數量為2個,腳本需要迭代的部分有兩個地方使用了參數Username,則在不同設置時的參數取值如表2:

 

表1 參數Username的數據池數據

Username

Alice

Bob

Chris

David

Frank

Green

Jack

Smith

 

表2 不同設置時參數取值示例

Select next row 取值

Update value on取值

參數取值示例

Sequential

Each iteration

每個VU中的參數都按照同樣的方式取值,第一次迭代中參數Username兩次出現都取Alice,第二次迭代中參數Username兩次出現都取Bob

Each occurrence

每個VU中的參數都按照同樣的方式取值,第一次迭代中參數首次出現取Alice,第二次出現取Bob;第二次迭代中參數首次出現取C hris,第二次出現取David

Once

每個VU中的參數都按照同樣的方式取值,參數在每次迭代的每次出現均取同樣的值Alice

Random

Each iteration

每個VU中的參數都同樣的方式取值,第一次迭代中參數兩次出現都取相同的值,其值從數據池中隨機選擇一個;第二次迭代中參數兩次出現都取相同的值,其值從數據池中隨機選擇一個

Each occurrence

每個VU中的參數都同樣的方式取值,第一次迭代中參數首次出現取數據池中的一個隨機值,第二次再隨機取一個值,第二次迭代中參數首次出現隨機從數據池中取一個值;第二次出現再隨機取一個值

Once

每個VU中的參數都按照同樣的方式取值,參數在每次迭代的每次出現均取同樣的值,該值從數據池中隨機選取

Unique

Each iteration

兩個VU按照不同的方式取值:對於第一個VU,第一次迭代中的參數兩次出現均取相同的值Alice,第二次迭代中的參數兩次均取Bob;對第二個VU,第一次迭代中的參數兩次出現均取相同值Chris,第二次迭代中的參數兩次均取David

Each occurrence

兩個VU按照不同的方式取值:對於第一個VU,第一次迭代中的參數第一次出現時取值Alice,第二次出現時取值Bob,第二次迭代中的參數首次出現時取Chris,第二次出現時取David;對於第二個VU,第一次迭代中的參數第一次出現時取值Frank,第二次出現時取值Green,第二次迭代中的參數首次出現時取Jack,第二次時取值Smith.

Once

兩個VU按照不同的方式取值:對於第一個VU,兩次迭代中的參數每次出現均取相同的值Alice;對於第二個VU,兩次迭代中的參數每次出現取相同的值Bob

 

Unique:主要是強調取值的唯一性,如果到最后沒有該值了,LR提供了其他解決方案.

When out of values選項只有在select next row設置為Unqiue時才有效,當數據池中的數據量不能支持迭代和Unique要求的數據量時,可以通過設置該選項的值指示LR的處理方法。

Abort VUser,則遇到這種情況時,VU停止運行;

Continue in a cyclic manner,取值超過時,啟用循環掃描,掃描那些還未被使用的數據進行使用;

Continue with last value,所有不足的取值都用最后一個取值來代替。

關於參數化取值,若有不明白,可以參照http://blog.csdn.net/candle806/article/details/6614486

 

 

四.參數化常見錯誤

 

錯誤代碼:Error:missing newline in d:\loadrunner\username.dat

 

錯誤原因:場景設置不合理,參數數量不夠,或者參數化文件有問題。

 

 

 

1)如果參數化文件反復修改,而在場景設置時沒有更新腳本,可能會導致參數化文件修改未生效的情況,建議當參數不是很多時,不要打開記事本去編輯參數,直接在LR提供的參數的表格中進行編輯即可。如果參數很多,需要直接打開記事本編輯參數,可以在controller中重新選擇一次腳本。

 

2)在記事本中編輯參數時,需要在最后一個參數后打回車,讓鼠標的光標移動到下一行


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM