LoadRunner进行参数化输入时,参数的属性有Select next row、Update value on两个项,其中Select next row属性包括三个选项: Update value on属性包括四个选项:Sequential、Random、Unique、四个选项。
首先搞清楚了几个概念:
1.Update value on
--Each Occurrence:只要发现该参数就重新取值(用于各处引用参数都不相关时)
--Each iteration:每次反复都要取新值(各个并发会共享同一个值,用于多次引用参数且相关的情况)
--Once:在所有的反复中都使用同一个值(仅在场景初始化时产生一次,在一个场景中的所有并发和所有反复的值都相同)
2.Select Next Row
方法可以是:连续的、随机的、唯一的、或者与其它
参数表的相同行。
--顺序(Sequential):该方法顺序地给虚拟用户分配参数值。如果正在
运行的虚拟用户访问数据表的时候,它会取到下一行中可用的数据。
--随机(Random):该方法在每次迭代的时候会从数据表中取随机数
--唯一(UNIQUE):Unique方法分配一个唯一的有顺序的值给每个虚拟用户的参数。
--其它参数表的相同行(Same Line As)该方法从和以前定义过的参数中的同样的一行分配数据。你必须指定包含有该数据的列。在下拉列表中会出现定义过的所有参数列表。注意:至少其中的一个参数必须是Sequential、Random或者Unique。
--使用种子取随机顺序(Use Random Sequence with Seed):如果从Loadrunner的控制器来运行scenario,你可以指定一个种子数值用于随机顺序。每一个种子数值在测试执行的时候代表了一个随机数的顺序。无论你何时使用这个种子数值,在scenario中同样的数据顺序就被分配给虚拟用户。如果在测试执行的时候发现了一个问题并且企图使用同样的随机数序列来重复测试,那么,你就可以启动这个功能(可选项)。
3.唯一参数值的分配方式
场景初始化时会根据设置为每个VUser预先分配多个参数值,已确保不会重复。
使用选项:Allocate XXX values for each vuser
按照此设置后,运行设置为并发3个Vuser,RunTimeSetting设置为Run两次。运行 LoadRunner时,总是报错:
insufficient records for param 'NewParam' in table to provide the Vuser with unique data
百思不得其解,终于在Google上看到一篇文中提到:
Do not delete script sections to avoid confusing the Controller. Instead, delete scripts you don't use from the Runtime Settings Run Logic section. However, actions not appearing in Run Logic are not available to the Controller.
Conversely, parameters in actions deleted in the Controller still increment. This may result in this error message: -84800 "insufficient records for param '...' in table to provide the Vuser with unique data" (哈哈,想起来了自己曾经删除过一些参数)
于是乎,New—〉Record—〉Replace Parameter一阵忙碌重新把脚本录制一遍,并且一次性设置好参数的属性。运行LoadRuner,那该死的错误终于看不到啦!
1、场景中单脚本时,在场景设计哪儿的启动USER哪儿设置开始多少个USER就成。2、场景中有多个脚本时:
1)你可以按第一步设计第一个脚本的用户数,之后在场景组哪儿添加其他脚本,在那个界面可以数据要添加脚本的用户数,依次添加多个。
2)在用户组点虚拟用户,在打开的界面选择相应的脚本(下拉选择),之后点右边功能菜单中的添加USER,可以实现设置用户数。
我们的用户界面只看到100个,如果你想看到更多,请修改安装目录/config/vugen.ini中的[ParamTable]属性下的MaxVisibleLines,你想改成多少就改成多少欢迎分享,转载请注明来源:内存溢出
评论列表(0条)