51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 5743|回复: 11
打印 上一主题 下一主题

[原创] 关于 Vuser 加载的问题

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2007-7-13 11:54:16 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
关于Scenario Groups在LoadRunner Controller中的一些疑问和观点:
  1,
    我们可以看见在Scenario Groups中有Down,Pending,Init,Ready,Run,Passed ... 这几个数据项目。
    我定义1200个vusers,并且希望每1秒钟加载100个。
    出现的结果是在Pending中每一秒会加载100个,而在Run中则没有这样的场景出现,那么这样看来我所定义的每1秒钟加载100个
  并不是会在每一秒有100个vusers提交给server处理(换言之,就是server不是在每秒都可以得到100个压力)。
   
    我如此分析的依据是:Down,Pending,Init,Ready 这几个都是在LoadRunner中的前期过程,而在这期间vuser并没有提交到server。
   
  2,
    定义1000个vusers,同时在schedule中选中"LoadRunner all Vusers simultaneously",然后直接运行。但是得到结果中Running的最大值也
  只有47,这样也说明并不是这1000个vusers同时加载到了server端。
   
  3,我依然定义1200个vusers,并且希望每1秒钟加载100个。但是我在schedule中选中"Initinalize all Vusers before Run",那么在执行
  的时候,这1200个vusers会首先被全部初始化到Ready状态,然后开始执行。结果是这样的:在第2,5,8,11,14,16 ... 秒Running都约有50个,
  这样看来依然不是每1秒钟加载100个到server端。
  
  最后我感觉问题就是出在Down,Pending,Init,Ready这几个过程中,但是我又不知究竟该如何描述。Down,Pending,Init,Ready究竟意味着什么
  意思,我想请高手能给我详细解释下。多谢
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
 楼主| 发表于 2007-7-13 12:54:00 | 只看该作者
Down     The Vuser is down.  
Pending  The Vuser is ready to be initialized and is waiting for an
         available load generator, or is transferring files to the load generator. The Vuser will run when the
         conditions set in its scheduling attributes are met.  
Initializing  The Vuser is being initialized on the remote machine.  
Ready         The Vuser already performed the init section of the script and is ready to run.  
Running       The Vuser is running. The Vuser script is being executed on a load generator.  
Rendezvous    The Vuser has arrived at the rendezvous and is waiting to be released by LoadRunner.  
Done.Passed   The Vuser has finished running. The script passed.  
Done.Failed   The Vuser has finished running. The script failed.  
Error         A problem occurred with the Vuser. Check the Status field on the Vuser dialog box or the output window
              for a complete explanation of the error.  
Gradual Exiting  The Vuser is completing the iteration or action it is running (as defined in Tools > Options >
                 Run-Time Settings) before exiting.  
Exiting  The Vuser has finished running or has been stopped, and is now exiting.  
Stopped  The Vuser stopped when the Stop command was invoked.
回复 支持 反对

使用道具 举报

该用户从未签到

3#
 楼主| 发表于 2007-7-13 12:55:49 | 只看该作者
Down     The Vuser is down.  
Pending  The Vuser is ready to be initialized and is waiting for an
         available load generator, or is transferring files to the load generator. The Vuser will run when the
         conditions set in its scheduling attributes are met.  
Initializing  The Vuser is being initialized on the remote machine.  
Ready         The Vuser already performed the init section of the script and is ready to run.  
Running       The Vuser is running. The Vuser script is being executed on a load generator.  
Rendezvous    The Vuser has arrived at the rendezvous and is waiting to be released by LoadRunner.  
Done.Passed   The Vuser has finished running. The script passed.  
Done.Failed   The Vuser has finished running. The script failed.  
Error         A problem occurred with the Vuser. Check the Status field on the Vuser dialog box or the output window
              for a complete explanation of the error.  
Gradual Exiting  The Vuser is completing the iteration or action it is running (as defined in Tools > Options >
                 Run-Time Settings) before exiting.  
Exiting  The Vuser has finished running or has been stopped, and is now exiting.  
Stopped  The Vuser stopped when the Stop command was invoked.
回复 支持 反对

使用道具 举报

该用户从未签到

4#
发表于 2007-7-13 13:27:44 | 只看该作者
对,你自己问的问题自己回答了。

仔细看看上面的解释就知道了啊

1000个用户同时加载不可能一下子就加载到服务器了,
LoadRunner all Vusers simultaneously表示同时加载所有用户,表示客户端的愿望,实际到服务器是不可能的
Initinalize all Vusers before Run" 表示开始执行之前初始化所有用户,要知道这里的初始化表示执行init.c,而并没有开始执行真正的action。
回复 支持 反对

使用道具 举报

该用户从未签到

5#
 楼主| 发表于 2007-7-13 14:47:54 | 只看该作者
还有些不明白,就是究竟在上面的哪个步骤用户的请求被提交到服务器上呢?是在ready 还是在 running?麻烦斑竹给个指示!!!sdlkfj5
回复 支持 反对

使用道具 举报

该用户从未签到

6#
发表于 2007-7-13 15:03:08 | 只看该作者
是不是说每秒给服务器加压只是负载端产生了相应的虚拟用户数,而实际上这些压力是如何增加到(同时或者延时)服务器上并不是LR能决定的?
回复 支持 反对

使用道具 举报

该用户从未签到

7#
 楼主| 发表于 2007-7-13 15:34:13 | 只看该作者
应该是这样的,我想LR只是尽量那样按照设计场景来执行,但总是由于其它的一些原因而无法百分百的满足我们需要的加载行为的!但是这样的差别还是很小的,对于结果图要仔细分析才可以有正确的适当的结论!而不能随便一看就说“呀,怎么和我预期的不一样呢”!!对吧??!!
回复 支持 反对

使用道具 举报

该用户从未签到

8#
发表于 2007-7-13 15:53:24 | 只看该作者
如果初始化过程执行了init.c那end.c什么时候执行呢?不会在运行时执行吧,那样不时运行执行了action.c 和end.c两部分了,如果不是,那end.c又是在那里执行的???
回复 支持 反对

使用道具 举报

该用户从未签到

9#
发表于 2007-7-16 14:41:16 | 只看该作者
同意rickyzhu 的话,楼主可以搜索一下有关init,action,end这三个概念的相关解释。重点action的工作描述。还有lr工具本身也有缺陷,你同时加载1200个模拟用户几乎是不可能实现的.
回复 支持 反对

使用道具 举报

  • TA的每日心情
    郁闷
    2017-1-11 15:48
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]测试小兵

    10#
    发表于 2007-7-16 16:51:17 | 只看该作者
    原帖由 poley 于 2007-7-13 15:53 发表
    如果初始化过程执行了init.c那end.c什么时候执行呢?不会在运行时执行吧,那样不时运行执行了action.c 和end.c两部分了,如果不是,那end.c又是在那里执行的???


    Initial的时候,LR没有执行任何的action。  Init.c是在runing状态的时,执行的。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    11#
    发表于 2007-7-16 18:01:22 | 只看该作者

    回复 #10 spartan 的帖子

    你这么说的依据是什么?

    先看看LR的guide在发表评论吧。

    end.c是在退出的时候执行的。
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    郁闷
    2017-1-11 15:48
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]测试小兵

    12#
    发表于 2007-7-17 21:02:31 | 只看该作者
    原帖由 rickyzhu 于 2007-7-16 18:01 发表
    你这么说的依据是什么?

    先看看LR的guide在发表评论吧。

    end.c是在退出的时候执行的。


    我的依据就是,我打开CONTROLLER执行100个用户。 让他们一个一个加,然后看在runing状态前有无ACTION执行, 结果是没有!!!

    [ 本帖最后由 spartan 于 2007-7-17 21:56 编辑 ]
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-11-15 00:47 , Processed in 0.074287 second(s), 27 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

    快速回复 返回顶部 返回列表