lr参数化连接mysql_lr参数化取值与连接数据库

TXT文本,EXCEL表格以及数据库中的表都可以作为参数的数据集载体,LR都是支持的。

特别提醒:

1.在形成数据池之后,数据库中的数据变化不会影响数据池中的数据。

2.数据文件一定要以一个空行结束,否则,最后一行输入的数据不会被参数所使用。

3.一般我们用到的很多的都是使用数据文件来保存我们的参数。一般来说LR对于参数的个数是没有限制的,但是在那个Parameter List中显示的就只能显示100个。so当你看到显示在列表中的参数个数少于你的文件中保存的个数,不用紧张。

一.介绍LR参数化数据源Orac le,MSSQL,Excel

1. 数据来源Oracle向导,选择“Data Wizard”创建,如图:

542630485f268e00bdbc1d79bc509d4d.png

376e79b052f8ed76163c1af52800eb6a.png

97af01f68b57cb3944e1d403304faa7d.png

6b77959f5c50db547cdc8812285030b3.png

cf7e4ef24874e48edcd5dc6bfdd1cea5.png

83df11cc39387606e5b3f60c9277eaea.png

6f5bf21e0439fb53d7aa40864be19e08.png

cc536bf1708cf1286913d5cf28b6b59a.png

92af470e813da43f70eb3a29ba17d1c2.png

5807b923598c74bb956bb48cff11d3bf.png

e9456e977710a224fb5b4f27476bcea8.png

2.数据来源MSSQL向导

与Oracle不同的是:

c38ce0f135f26718fc82445a5f3c241e.png

3.数据来源Excel向导

与Oracle不同的地方:选择Excel Files

f3f46e45cd524ec231bad99aa57cf3a0.png

beb696c29555da4ffbdf7e33b188a9f0.png

输入查询语句:

8396f5eca2d30590a6273828944040d1.png

注意:经常会出现以下错误:

379f0b8412814f607fd083cc00a5b5ca.png

解决办法:重新再创建一次就可以了。

二、介绍两种参数化的区别

一种会初始化数据,另一种不会初始化数据

具体如图:

848c60318a0b84204828f78ba05f9d01.png

1.右键选择“Replace with a Parameter”这种,会默认初始化数据。

56d5db89ad7a3f392f35bcaff5da103e.png

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)在记事本中编辑参数时,需要在最后一个参数后打回车,让鼠标的光标移动到下一行

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值