LoadRunner学习知多少--参数化TXT文本,EXCEL表格以及数据库中的表都可以作为参数的数据集载体,LR都是支持的。
特别提醒: 1.在形成数据池之后,数据库中的数据变化不会影响数据池中的数据。 2.数据文件一定要以一个空行结束,否则,最后一行输入的数据不会被参数所使用。 3.一般我们用到的很多的都是使用数据文件来保存我们的参数。一般来说LR对于参数的个数是没有限制的,但是在那个Parameter List中显示的就只能显示100个。so当你看到显示在列表中的参数个数少于你的文件中保存的个数,不用紧张。可以通过修改vugen.ini(HP\LoadRunner\config下的文件vugen.ini)文件中[ParamTable]下的MaxVisibleLines就可以了。 4.不是所有的问题都需要使用参数化,需要根据实际情况进行正确处理; 5.对于已经进行参数化的脚本,建议选择参数替换日志Parameter substitution,便于观察参数的替换过程。
一.介绍LR参数化数据源Orac le,MSSQL,Excel 1. 数据来源Oracle向导,选择“Data Wizard”创建,如图:注意:参数的文件名不要使用con.dat、pm.dat或者lpt*.dat等系统装置名
2. 数据来源MSSQL向导 与Oracle不同的是:
3. 数据来源Excel向导 与Oracle不同的地方:选择Excel Files 输入查询语句: 注意:经常会出现以下错误: 解决办法:重新再创建一次就可以了。
二、介绍两种参数化的区别 一种会初始化数据,另一种不会初始化数据 具体如图: 1.右键选择“Replace with a Parameter”这种,会默认初始化数据。 2.点击工具栏中的parameter list,不会初始化数据。
三. 参数化取值 1.select next row指明了以何种方式从数据池中获取数据 选项: Sequential 表示按照顺序取值 Random表示从数据池中随机取值 Unique.表示每次取唯一值
2.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的数据池数据
表2 不同设置时参数取值示例
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)在记事本中编辑参数时,需要在最后一个参数后打回车,让鼠标的光标移动到下一行。
五.备注 通过这种参数化连接数据库进行压力测试对性能是有一定的影响 |
|
来自: everydayOK > 《loadrunner》