迭代--参数化

上一篇 / 下一篇  2007-07-12 11:10:45 / 个人分类:LoadRunner

  • 文件版本: V1.0
  • 开发商: 本站原创
  • 文件来源: 本地
  • 界面语言: 简体中文
  • 授权方式: 免费
  • 运行平台: Win9X/Win2000/WinXP

这里讨论参数化的一些高级应用:

一、Iteration(迭代)对参数的影响

1.问题引入:

我们知道,在Run-time Settings中,选项Run Logic可以设定运行逻辑,它包括三部分:InitRunEnd。当我们在Run中添加一个Block0,并在Block0中添加需要的Action,同时给Block0设置运行逻辑,比如按顺序运行10(Run LogicSequentialIterations10)。如果Block0中的Action含有参数,那么该参数应该如何设置?

      2.解决方案:

我们知道,参数设置最主要的有三个:Select next rowUpdate value onWhen out of valuesSelect next row一般会选UniqueWhen out of values一般会选Continue with last value,这两个对于上述问题没有什么疑问,问题在于Update value on的值应该是什么,我们可选的是Each iterationEach occurrenceOnce

首先,我要来了解Each iterationEach occurrenceOnce的意思:

(1)             Each iteration是指每次迭代时更新值,但这个迭代其实只针对Run-time Settings中,选项Run LogicRunIterations,对Run中的Block是不起作用的。也就是说,当Run迭代了10次,同时Run中的Block0也迭代10次的时候,每Run一次,会更新一个参数值,而Block0迭代10次时都使用这个参数值,不会再去更新参数值了。也可以这样理解,每一个Block其实相当于我们自己在脚本里面写一个for循环,去循环调用Block中的Action,此时Each iteration当然只对Run有效。

(2)             Each occurrence是指每次参数出现时就更新值。

(3)             Once是指只取值一次。

显然,在这种情况下,Update value on只能选择Each occurrence。另外当我们选择了Each occurrence后,LR要求我们设置Allocate …values for each Vuser。注意这个值一般应该是RunIterations乘以BlockIterations

二、Each occurrence带来的问题:

1. 问题引入:

当我们在进行某个参数设置时,有时Update value on不得不选择Each occurrence(类

似一中所述情况),但是,如果Action中有多个相同的参数时,此时参数会在每次出现就更新值,这不是我们所期望的,应为每次执行Action时,同一个参数的值应该都是一样的,否则实际业务操作将运行失败。

2. 解决方案:

其实解决方法很简单,所有相同的参数以不同名字命名(如,P1,P2,P3…),每个参

数指向同一个Dat文件,对参数P1进行相应的设置,接下来其他参数的Select next row选择Same line as P1,这样所有的参数的值的更新机制和P1一样,每次行Action时,同一个参数的值就都是一样了。

三、Dat文件记录读取原理:

Controller在运行时,会首先初始化Vuser脚本,以检查脚本是否有语法错误,以及为各个虚拟用户分配参数值。而分配参数值的时候,本人猜测它是根据需要读取的参数数量循序或者随机读取Dat的记录(一行为一个记录),当记录个数不足时,就会抛出错误提示。因此我们在选择文件源是,就要多加小心,以防止Controller自己“错乱方寸”:

1.不同参数(对应相同的列)对应的Dat文件要不同,若想指向同一文件,则参数设置“Select next row”应选择“Same line as…

2.不同Vuser脚本不要使用同一个Dat文件。

TAG: LR LoadRunner

 

评分:0

我来说两句

我的栏目

日历

« 2024-04-27  
 123456
78910111213
14151617181920
21222324252627
282930    

数据统计

  • 访问量: 8631
  • 文件数: 4
  • 书签数: 129
  • 建立时间: 2007-06-12
  • 更新时间: 2007-10-26

RSS订阅

Open Toolbar