• LoadRunner录制:集合点


    背景

    LoadRunner 执行过程中,有的user 跑的快,有的跑的慢。就导致user1可能还在执行 登录操作呢,user2都已经开始执行查询操作了。

    但是在进行负载测试时 ,我们又需要让很多用户同时执行一个任务。比如我这时候需要让30个用户同时开始查询。那我们就需要在查询操作前面添加一个集合点。意思就是我需要30个用户在这个地方集合,然后同时释放进行查询操作。

    这时候第一个用户执行到集合点的时候,并不会继续进行查询操作,而是等待其他用户到达。等到30个用户都到达这里的时候,再一起执行查询操作。

    添加方法

    1. 在要添加集合点的地方,右键 –> Insert –> Rendezvous。

    2. 输入集合点名称,比如“登录”。点击OK。

    lr_rendezvous("登录");

    设置集合点策略

    打开Controller,导入添加了集合点的脚本。

    点击 Scenario –> Rendezvous ,打开 Rendezvous Information 弹出框。

    image

    Rendezvous:这里会列出当前场景中所有脚本中的集合点名称。

    Scripts: 选中某个结合点名称之后,这里列出含有该集合点的脚本。

    Vusers:这里列出所有的用户。这里的用户数和Scenario Groups里面该脚本设置的Quantity是一致的。

    Disable Rendezvous:就是把某个集合点给Disable。

    Policy:这里有3种集合点释放策略。下面的x、y、z可以随意更改。

    • 方式一:当 x% 的所有用户到达集合点时释放。比如一共10个用户,这里x是30%,那么只要3个用户到达该集合点就可以释放。
    • 方式二:当 x% 的所有running状态的用户到达集合点时释放。用户除了running状态还有其他状态,比如说down、Pending之类的。这里假设一共有10个用户,有5个是running状态的,这里x是20%,那么只要1个用户到达该集合点就可以释放。
    • 方式三:当 y个用户到达结合点时释放
    • 超时设置:就是设定集合的超时时间。假设这里设置30秒,然后第N个用户到达集合点了,等待30秒,第N+1个用户还没到达,那么Controller会从集合点释放所有的用户。注意的是每个用户到达都会check这个超时时间,一旦30秒之内没有第二个用户到达,集合点就会释放。
    • image

    Disable VUser: 让某个用户不参与该集合点。

    Status Inforamtion:可以实时反馈该集合点的情况。

    • Current Status:当前有多少虚拟用户到达集合点 of 该集合点相关的虚拟用户一共是多少。
    • Time:虚拟用户在当前集合点被释放的时间。
    • Reason:虚拟用户在当前集合点被释放的原因。一般都是 Timeout 或者 Arrived。

    运行场景时候,我们可以在Scenario groups 里面查看集合点用户情况,也可以点击Vusers 按钮查看详细的用户情况。

    image

    注意事项

    1. 集合点设置灰色不可点击的情况

    如果场景中的脚本不含有集合点,那么 Scenario –> Rendezvous  按钮是灰色不可点击的。

    如果场景中的脚本含有集合点,同时 Scenario –> Rendezvous  按钮还是灰色不可点击,那么有可能是在打开New Scenario的时候,选中了 Use the Percentage Mode 。解决方式就是重新打开同时不要勾上Use the Percentage Mode ,或者选择 Scenario –> Convert Scenario to the Vuser Group Mode .

    image

    2. 集合点应该放在事务外。

    如果事务内存在集合点,那么虚拟用户在集合点等待的时间也会被算入事务时间,导致早进入集合点的虚拟用户的事务时间过长。

    3. 集合点仅对Action起作用。 在vuser_init 以及 vuser_end 里面无法插入检查点。

    4. 集合点是分批次的。如果有100个用户,设置指定70个用户达到集合点才释放。那么前面70个到达集合点则会释放该70个,后边到达集合点的用户要等到满足70个才会释放。

  • 相关阅读:
    (OK) VirtualBox 5.0.10 中 Fedora 23 在安装了增强工具后无法自动调节虚拟机分辨率的问题
    (OK) install-fedora23—gnome classic—dnf—gdm—multi-user—graphical
    (OK) fedora23——add “opening terminal” in the menu of right click
    (OK) Install Docker on Fedora 23
    (OK) 运行cBPM in Fedora23
    错误:‘bOS::SQL::SQLCommand::SQLOperation’既不是类也不是命名空间
    My enum is not a class or namespace
    【t049】&&【u001】足球
    【u002】数列排序(seqsort)
    【u003】计算概率
  • 原文地址:https://www.cnblogs.com/miniren/p/6898610.html
Copyright © 2020-2023  润新知