从Loadrunner中的相关期间捕获的数组值列表中选择随机数

时间:2014-01-26 17:46:04

标签: c arrays loadrunner

我已经将我的脚本中的值关联起来并使用Ord=all捕获到数组列表中,现在我想要随机显示这些值并以特定格式将其传递给文件。 有人可以帮我理解Loadrunner中如何使用随机函数。

脚本:

web_reg_save_param("param", "rb=\\", "lb=\\", "Ord=all", LAST);
values:
param_1 = blah-blah
param_2 = blah-blah

等等......

1 个答案:

答案 0 :(得分:0)

  

...将其传递给文件,......

人们想要这样做的时间超过99%是因为他们打算将值作为一个虚拟用户类型生成的输出,并将其作为输入传递给另一个虚拟用户类型。一般来说,这不起作用的原因如下:

  • 所有参数文件都在测试开始时加载到RAM中,因此写入文件尾端的新值只会出现在下一个测试中,而不是当前测试中
  • 在设计合理的测试中,虚拟用户类型分配给不同的负载生成器。这意味着您需要将文件写入公共位置以供所有要访问的虚拟用户访问,例如共享网络驱动器。您现在将向虚拟用户添加两个额外的有限资源调用,一个网络请求和一个磁盘写入请求。这会降低虚拟用户的速度,可能会给整个测试设计带来瓶颈。
  • 让我们直截了当,很少有LoadRunner用户能够管理数十,数百或数千名用户从同一文件中读取,写入(并可能删除)记录的技能。这是一个非常简单的编程操作。通过询问如何将信息写入文件,您已经将自己置于技能领域,在这个领域中,您没有编程成熟度来完成这一任务的任务。由于所有用户都试图同时访问,您很可能会因锁定而引入各种延迟。
  • HP包含一项服务,允许用户通过代理将数据从一个用户传递到另一个用户。这是虚拟表服务器(VTS)。然后,VTS将管理锁以及对其内部数据文件的所有读取,写入和删除,这简化了从一个用户到另一个用户的数据的极大行为。 VTS是"使用一次"用于传递数据的队列,因此没有理由不在数据库提供程序中使用诸如RabbitMQ或Queue表之类的队列解决方案来完成相同的任务。请确保不要使用与测试中的应用程序在同一基础架构上运行的排队解决方案