LoadRunner文件参数取值方式设置

2010-09-08  陶延安 

LoadRunner文件参数取值方式设置

本篇文章主要讲述使用LoadRunner在进行性能测试时候对单线程循环运行多次文件参数取值方式设置,通读这篇文章将脚本录制进行参数化后,对参数配置使用如MDN的参数调用情况的理解很有作用。本人在此郑重声明该文章的所有内容均为原创,不免有些错误,欢迎大家指点。

循环运行即模拟用户以多个用户的号码为条件,依次对这些用户做开户操作。

预置一批号码

点击参数列表按钮或按“Ctrl+L”打开参数列表对话框,选择MDN参数,点“Edit with Notepad”。也可以直接编辑MDN.dat文件。将如下10个号码设置到文件中并保存。此时在参数列表中将显示这些号码。点close关闭,然后保存一下脚本。注意,在号码的末尾必需加1个回车,否则最后一个号码不会被用到。

文件参数取值方式设置

在参数列表对话框中,选择文件形式的参数时,一个需要注意的地方是“Select next row”和“Update value on”这两个选项,而与“select next row”选项所跟的“Update value on”是有特定组合的。

其中“Select next row”意思是当需要再从文件中取出一个参数时,采用何种策略。默认值Sequential表示顺序读取参数文件中的值,依次填充到脚本中设置参数的位置。而“Random”则表示随机选值。“Unique”表示唯一取值,通常用于并发测试。它表示当文件中的某个值被用过后,在本次运行中就作废了,以后不论怎样循环都不会再次选到这个值。

Update value on”意思时,在什么情况下,要从参数文件中取一个新的参数。默认值“Each iteration”表示每当开始一个新的迭代时,就取一个新的参数。“Each occurrence”选项表示每当出现一个参数替换的位置,就取更新一次参数。而“Once”则表示仅更新一次参数,之后就一直使用这个参数。

在单次或单线程循环运行脚本时,选择默认选项即可。但在并发运行时则需要视具体情况设置。

下面我们就开始详细讲解文件参数取值,并以例子的形式加以说明,对于理解有些帮助。

1、“Select next row”选择“sequential

①“Update value on”选择“Each iteration”,准备00~99一百个已经开户且状态正常的号码。设置10个用户并发10次迭代,脚本中的MDN数量为2,在进行性能测试后我们进行一下分析,重点放在用户和使用号码上面。我们来展示一下号码被使用的过程。(vuser1表示第一个用户,00表示一百个号码中的第一个,依次类推)

②“Update value on”选择“Each occurrence”,准备00~99一百个已经开户且状态正常的号码。设置10个用户并发10次迭代,脚本中的MDN数量为2,在进行性能测试后我们进行一下分析,重点放在用户和使用号码上面。我们来展示一下号码被使用的过程。(vuser1表示第一个用户,00表示一百个号码中的第一个,依次类推)

③“Update value on”选择“once”,准备00~99一百个已经开户且状态正常的号码。设置10个用户并发10次迭代,脚本中的MDN数量为2,在进行性能测试后我们进行一下分析,重点放在用户和使用号码上面。我们来展示一下号码被使用的过程。(vuser1表示第一个用户,00表示一百个号码中的第一个,依次类推)

2、“Select next row”选择“Random”,“Random”表示随机选值

①“Update value on”选择“Each iteration”,②“Update value on”选择“Each occurrence”,③“Update value on”选择“once”,为随机取值,这不在讲述。

3、“Select next row”选择“unique

①“Update value on”选择“Each iteration”“when out of values”选择“Abort vuser”,准备00~99一百个已经开户且状态正常的号码。设置10个用户并发10次迭代,脚本中的MDN数量为2,在进行性能测试后我们进行一下分析,重点放在用户和使用号码上面。我们来展示一下号码被使用的过程。(vuser1表示第一个用户,00表示一百个号码中的第一个,依次类推)

②“Update value on”选择“Each occurrence”“when out of values”选择“Abort vuser”,准备00~99一百个已经开户且状态正常的号码。设置10个用户并发10次迭代,脚本中的MDN数量为2,在进行性能测试后我们进行一下分析,重点放在用户和使用号码上面。我们来展示一下号码被使用的过程。(vuser1表示第一个用户,00表示一百个号码中的第一个,依次类推)

③“Select next row”选择“unique”,“Update value on”选择“once”与“Select next row”选择“sequential”,“Update value on”选择“once”类型只会使用号码00

好了到这里文件参数配置基本上已经讲好了,不过现在还要啰嗦一点下图中“when out of value”讲解的是在那种情况下踢出用户,“allocate vuser valuses in the controller”是如何将号码资源分配用户。在“Update value on”选择“Each iteration”“when out of values”选择“Abort vuser”,分配的资源数目最好能和迭代的次数一致,这样才能保证并发测试用户、号码、迭代数的最佳状态,所有的号码都正确的被使用。

  对于文章中的描述有不妥或者是错误的地方,请大家留言。

650°/6458 人阅读/5 条评论 发表评论

陶延安  2010-09-08

对不起大家了,大家就撮合撮合看吧 ,图片我还要单独上传我觉得麻烦我就没有帖了。
哎 写个总结我对我来说难,我是很懒的这还是领导给逼出来了,说是要进行绩效考核,实在没辙啊。。


小窝  2010-09-09

陶延安: 对不起大家了,大家就撮合撮合看吧 ,图片我还要单独上传我觉得麻烦我就没有帖了。
哎 写个总结我对我来说难,我是很懒的这还是领导给逼出来了,说是要进行绩效考核,实在
与其被逼出来,不如阶段性、及时总结自己的知识。
习惯养成后,你会收获颇丰。建议你可以尝试加油


陶延安  2010-09-09

小窝 我觉得你说话的口吻特像我的PM,说实话我不是很喜欢听,我喜欢研究AIX\ORACLE就是喜欢做一些自己可以看得懂的笔记,让我去写文章我是很讨厌的。
不过你的建议我可以接受,前提是你加我为好友,给我点积分哈,以后我会给大家带来更好的文章哈。。。。。


欧阳陈龙  2010-09-10

嗯  写的还是很不错哈
   在工具的应用上很好了,但是现在公司要求的越来越多的是与数据库联合测试,将数据库中的数据直接导入到LR中,我觉得你应该写点这方面的哈。


陶延安  2010-09-10

恩 楼上老鸟
说的不错我会关注的 对了你要是有这方面的文档的也可以共享哈,我在公司主要用lr是基于http,数据库就是想要也没有这方面的license要不支援一下哈


登录 后发表评论