zoukankan      html  css  js  c++  java
  • loadrunner场景集合点设置

    在loadrunner的虚拟用户中,术语concurrent(并发)和simultaneous(同时)存在一些区别,concurrent 是指虚拟场景中参于运行的虚拟用户。

    而simultaneous与集合点(rendzvous point)关系更密切,是指在同一时刻一起执行某个任务的虚拟用户。

    1、下面以登录脚本为例,进行演示:

    Action()

    {

    //添加集合点,场景中如果想使用集合点策略,脚本中必须要添加集合点
    lr_rendezvous("登录集合点");
    //添加登录事务
    lr_start_transaction("登录");
    
    //登录
    web_custom_request("login",
        "URL=http://********:8080/mobile/api/user/login ",
        "Method=POST",
        "TargetFrame=",
        "Resource=1",
        "Referer=",
        "Mode=HTTP",
        "EncType=application/json ",
        "Body={"mobile":"131********","password":"123456"}",
        LAST);        
    
    lr_end_transaction("登录", LR_AUTO); 
    

    return 0;
    }

    2、打开Controller,设置虚拟用户数10个:

    3、点击菜单中的“scenario”的选项菜单。

    4、下拉菜单中选择“rendezvous”的选项即可。

    5、我们可以看到Vusers 列表框里有10个集合点(1~10),这里的数量和我们设置的虚拟用户数一致。

    可以点击选中某个集合点,点击“Disable VUser” 按钮,使其不参与集合点。

    6、点击“Policy...”来设置集合点的策略:

    下面来看看这三种策略的含义:

    1)、Release when :当所有虚拟用户中的x % 到达集合点进释放,即仅当指定百分比的虚拟用户到达集合点时,才释放虚拟用户。

    注意:此选项将会干扰场景的计划。如果选择此选项,场景将不按计划运行。

    例如:场景设置如下,10个用户,每30秒启动2个用户:

    集合点策略如下设置:

    运行场景如下:

    刚开始启动2个用户

    当用户数为4个时,开始运行

    当集合点不足4个时,就等待:

    2)、Release when :当所有正在运行的虚拟用户中的x %到达集合点时释放,即仅当场景中指定百分比的、正在运行的虚拟用户到达集合点时,才释放虚拟用户。

      还有不在运行的虚拟用户? 假如,设置为1分钟启动一个用户,当然会存在因为用户还没启动,所以无法参与集合点。

    场景设置如下:

    集合点设置策略为:

    刚开始启动4个用户:

    集合点不足50%时,就等待:

    3)、Release when : 当x 个虚拟用户到达集合点时释放,即仅当指定数量的虚拟用户到达集合点时,才释放虚拟用户。

      这个很好理解,当我用百分比不太好衡量集合点的虚拟用户数,当然可以设置具体的用户数。

    场景设置如下:

    集合点策略设置如下:

    场景运行中的截图:

    初始化4个用户,都到达集合点

    等待第六个用户到达集合点

    4)、Timeout between Vusers (虚拟用户之间的超时)框中输入一个超时值。

      假如设置了集合10用户并发,结果9个用户已经集合到位,还剩1个虚拟用户,左等右等就是等不来。那总不能一直等下去吧。设定了个时间,假如30秒还不来,那就不管它了。

      超时的时长默认是30秒,我们可以根据具体的被测应用进行调整。

    说明:

    实际工作中,除了测试秒杀和模拟瞬间的并发,其他情况下用集合点的很少。

    补充:

    如果一台负载机不足时,还可以添加多台,只需在其他服务器上安装loadrunner的Controller即可,添加方式如下:

    点击Add后,输入一下信息即可添加成功:

    添加完成后,就可选择了。

  • 相关阅读:
    weak_ptr解决shared_ptr环状引用所引起的内存泄漏[转]
    如何限制对象只能建立在堆上或者栈上(转载)
    为了异常安全(swap,share_ptr)——Effecive C++
    注意类型转换——Effective C++
    http协议
    【java.math.BigInteger】常用函数
    【java.math.BigInteger】【转】常见问题
    【思路,dp,BigInteger】ZOJ
    【Warshall_Floyd】
    【Dijkstra】
  • 原文地址:https://www.cnblogs.com/greemmao/p/13938161.html
Copyright © 2011-2022 走看看