wzfxf227 发表于 2010-10-26 16:12:43

loadrunner9的“Initialize all Vusers before Run”配置

在网上看过很多文章,或者是转帖,都说“Initialize all Vusers before Run”功能是使脚本在run状态前,所有vuser都ready,都到达ready后一起run。

很长时间以来,我一直疑惑,我的经验完全是与之相反,实际操作中,“Initialize all Vusers before Run”配置下的用户很明显,陆陆续续进入run状态,根本不会在ready等待。而“Initialize all Vusers simultaneously"配置倒是实现了在ready集合的功能。

我不清楚这是为什么,也许是我对其字面理解的错误,我用的loadrunner是9.1。

另外说明,运行过程中的Init状态就是执行vuser_init脚本过程,我做过验证,那么run状态就是运行action脚本过程。那么问题来了,
1.Initialize是指的vuser_init过程,还是指的初始化虚拟用户的过程?
2.”before Run“中的Run指的是run状态,还是全部脚本的执行开始?

请高人指点一下。

msnshow 发表于 2010-10-26 22:06:53

是说初始化用户在运行之前,而不是同时运行

yuanyeqishi 发表于 2010-10-27 09:16:42

这里是指初始化虚拟用户,并不是用户开始run了,真正要让虚拟用户在集合前等待需要设置Rendezvous就是集结点被激活,测试时他才会根据要求进行等待一定条件满足了再继续进行下一步

androidone 发表于 2010-10-27 13:31:07

vuser_init就是初始化工程,你所谓的run状态需要加入结合点才能控制是否都在一起润,如果不加入集合点的话完全是靠服务器的响应的,即使加入集合点也不能保证百分之百的并发

wzfxf227 发表于 2010-10-28 13:05:20

现在觉得这个run够抽象的,竟然还有before run和simultaneously之分,也许必须有loadrunner执行原理才能理解了,不清楚有没有这种文档。

集合点确实不一定能集合,因为集合点也有配置,可以配置集合到什么条件后,就开使往下执行。
vuser_init脚本段里可以放入不需要循环的操作行为,例如登录操作,日常应用操作往往是一次登录多次操作,vuser_init的作用就是尽可能实现对日常操作特定的模拟。

目前我的结论,“Initialize all Vusers simultaneously"比“Initialize all Vusers before Run”好用,它确实更能保证执行的并发性。
页: [1]
查看完整版本: loadrunner9的“Initialize all Vusers before Run”配置