lr参数化取值与连接数据库
TXT文本,EXCEL表格以及數(shù)據(jù)庫中的表都可以作為參數(shù)的數(shù)據(jù)集載體,LR都是支持的。
?
特別提醒:
1.在形成數(shù)據(jù)池之后,數(shù)據(jù)庫中的數(shù)據(jù)變化不會影響數(shù)據(jù)池中的數(shù)據(jù)。
2.數(shù)據(jù)文件一定要以一個空行結(jié)束,否則,最后一行輸入的數(shù)據(jù)不會被參數(shù)所使用。
3.一般我們用到的很多的都是使用數(shù)據(jù)文件來保存我們的參數(shù)。一般來說LR對于參數(shù)的個數(shù)是沒有限制的,但是在那個Parameter List中顯示的就只能顯示100個。so當(dāng)你看到顯示在列表中的參數(shù)個數(shù)少于你的文件中保存的個數(shù),不用緊張。
?
一.介紹LR參數(shù)化數(shù)據(jù)源Orac le,MSSQL,Excel
1. 數(shù)據(jù)來源Oracle向?qū)?/strong>,選擇“Data Wizard”創(chuàng)建,如圖:
?
2. 數(shù)據(jù)來源MSSQL向?qū)?/strong>
與Oracle不同的是:
?
3. 數(shù)據(jù)來源Excel向?qū)?/strong>
與Oracle不同的地方:選擇Excel Files
輸入查詢語句:
注意:經(jīng)常會出現(xiàn)以下錯誤:
解決辦法:重新再創(chuàng)建一次就可以了。
?
二、介紹兩種參數(shù)化的區(qū)別
一種會初始化數(shù)據(jù),另一種不會初始化數(shù)據(jù)
具體如圖:
1.右鍵選擇“Replace with a Parameter”這種,會默認(rèn)初始化數(shù)據(jù)。
?
2.點(diǎn)擊工具欄中的parameter list,不會初始化數(shù)據(jù)。
?
三. 參數(shù)化取值
select next row指明了以何種方式從數(shù)據(jù)池中獲取數(shù)據(jù)
選項(xiàng):
Sequential 表示按照順序取值
Random表示從數(shù)據(jù)池中隨機(jī)取值
Unique.表示每次取唯一值
?
Update value on 指明了參數(shù)值在何時發(fā)生變化。
選項(xiàng):
Each iteration表示在每次跌代時更新參數(shù)的值。如果在一個迭代過程中某參數(shù)出現(xiàn)了多次,參數(shù)取相同的值
Each occurrence表示在參數(shù)每次出現(xiàn)時更新參數(shù)的值。如果在一個迭代過程中某參數(shù)出現(xiàn)了多次,每次取不同的值。
Once表示VU在執(zhí)行時,只在第一次跌代時為參數(shù)取一次值,以后每次跌代使用相同的值。
?
根據(jù)select next row和Update value on的不同設(shè)置組合,VU運(yùn)行過程中為參數(shù)取不同的值,下面舉例說明:
假設(shè)在某個類型為File的參數(shù)Username設(shè)置如下表1所示的數(shù)據(jù)池,該參數(shù)所在的腳本中包含該參數(shù)的部分要求迭代2次,執(zhí)行腳本的VU數(shù)量為2個,腳本需要迭代的部分有兩個地方使用了參數(shù)Username,則在不同設(shè)置時的參數(shù)取值如表2:
?
表1 參數(shù)Username的數(shù)據(jù)池數(shù)據(jù)
| Username |
| Alice |
| Bob |
| Chris |
| David |
| Frank |
| Green |
| Jack |
| Smith |
?
表2 不同設(shè)置時參數(shù)取值示例
| Select next row 取值 | Update value on取值 | 參數(shù)取值示例 |
| Sequential | Each iteration | 每個VU中的參數(shù)都按照同樣的方式取值,第一次迭代中參數(shù)Username兩次出現(xiàn)都取Alice,第二次迭代中參數(shù)Username兩次出現(xiàn)都取Bob |
| Each occurrence | 每個VU中的參數(shù)都按照同樣的方式取值,第一次迭代中參數(shù)首次出現(xiàn)取Alice,第二次出現(xiàn)取Bob;第二次迭代中參數(shù)首次出現(xiàn)取C hris,第二次出現(xiàn)取David | |
| Once | 每個VU中的參數(shù)都按照同樣的方式取值,參數(shù)在每次迭代的每次出現(xiàn)均取同樣的值A(chǔ)lice | |
| Random | Each iteration | 每個VU中的參數(shù)都同樣的方式取值,第一次迭代中參數(shù)兩次出現(xiàn)都取相同的值,其值從數(shù)據(jù)池中隨機(jī)選擇一個;第二次迭代中參數(shù)兩次出現(xiàn)都取相同的值,其值從數(shù)據(jù)池中隨機(jī)選擇一個 |
| Each occurrence | 每個VU中的參數(shù)都同樣的方式取值,第一次迭代中參數(shù)首次出現(xiàn)取數(shù)據(jù)池中的一個隨機(jī)值,第二次再隨機(jī)取一個值,第二次迭代中參數(shù)首次出現(xiàn)隨機(jī)從數(shù)據(jù)池中取一個值;第二次出現(xiàn)再隨機(jī)取一個值 | |
| Once | 每個VU中的參數(shù)都按照同樣的方式取值,參數(shù)在每次迭代的每次出現(xiàn)均取同樣的值,該值從數(shù)據(jù)池中隨機(jī)選取 | |
| Unique | Each iteration | 兩個VU按照不同的方式取值:對于第一個VU,第一次迭代中的參數(shù)兩次出現(xiàn)均取相同的值A(chǔ)lice,第二次迭代中的參數(shù)兩次均取Bob;對第二個VU,第一次迭代中的參數(shù)兩次出現(xiàn)均取相同值Chris,第二次迭代中的參數(shù)兩次均取David |
| Each occurrence | 兩個VU按照不同的方式取值:對于第一個VU,第一次迭代中的參數(shù)第一次出現(xiàn)時取值A(chǔ)lice,第二次出現(xiàn)時取值Bob,第二次迭代中的參數(shù)首次出現(xiàn)時取Chris,第二次出現(xiàn)時取David;對于第二個VU,第一次迭代中的參數(shù)第一次出現(xiàn)時取值Frank,第二次出現(xiàn)時取值Green,第二次迭代中的參數(shù)首次出現(xiàn)時取Jack,第二次時取值Smith. | |
| Once | 兩個VU按照不同的方式取值:對于第一個VU,兩次迭代中的參數(shù)每次出現(xiàn)均取相同的值A(chǔ)lice;對于第二個VU,兩次迭代中的參數(shù)每次出現(xiàn)取相同的值Bob |
?
Unique:主要是強(qiáng)調(diào)取值的唯一性,如果到最后沒有該值了,LR提供了其他解決方案.
When out of values選項(xiàng)只有在select next row設(shè)置為Unqiue時才有效,當(dāng)數(shù)據(jù)池中的數(shù)據(jù)量不能支持迭代和Unique要求的數(shù)據(jù)量時,可以通過設(shè)置該選項(xiàng)的值指示LR的處理方法。
Abort VUser,則遇到這種情況時,VU停止運(yùn)行;
Continue in a cyclic manner,取值超過時,啟用循環(huán)掃描,掃描那些還未被使用的數(shù)據(jù)進(jìn)行使用;
Continue with last value,所有不足的取值都用最后一個取值來代替。
關(guān)于參數(shù)化取值,若有不明白,可以參照http://blog.csdn.net/candle806/article/details/6614486
?
?
四.參數(shù)化常見錯誤
?
錯誤代碼:Error:missing newline in d:\loadrunner\username.dat
?
錯誤原因:場景設(shè)置不合理,參數(shù)數(shù)量不夠,或者參數(shù)化文件有問題。
?
?
?
1)如果參數(shù)化文件反復(fù)修改,而在場景設(shè)置時沒有更新腳本,可能會導(dǎo)致參數(shù)化文件修改未生效的情況,建議當(dāng)參數(shù)不是很多時,不要打開記事本去編輯參數(shù),直接在LR提供的參數(shù)的表格中進(jìn)行編輯即可。如果參數(shù)很多,需要直接打開記事本編輯參數(shù),可以在controller中重新選擇一次腳本。
?
2)在記事本中編輯參數(shù)時,需要在最后一個參數(shù)后打回車,讓鼠標(biāo)的光標(biāo)移動到下一行
轉(zhuǎn)載于:https://www.cnblogs.com/qmfsun/p/4401489.html
總結(jié)
以上是生活随笔為你收集整理的lr参数化取值与连接数据库的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 获取网页邮箱地址
- 下一篇: MD5加密字符串并转化为base64(C