需要使用Load Runner的解决方案

时间:2013-03-01 11:15:11

标签: loadrunner

我有一个场景,需要加载跑步者给我一个特定格式的报告。

场景:我有一个包含1000个SQL的Excel工作表。每行1个SQL。我希望load runner选择这个SQL并同时运行不同的用户(一次说3个用户)。例如,User1选择SQL1,User2选择SQL2& User3选择SQL3。现在,首先完成的用户将选择下一个SQL,例如User2先完成,然后选择SQL4,依此类推,直到所有SQL都用完为止。

报告:在最终报告中,我需要以下内容: 对于每个SQL - 执行SQL,SQL,开始时间,结束时间,响应时间的用户。 对于所有SQL(整体):CPU使用率,内存使用率,服务器的磁盘使用情况。 报告格式可以是任何内容,txt或excel。

谢谢, 阿洛克

3 个答案:

答案 0 :(得分:0)

你是说你创造了这个场景并且遇到了麻烦吗?如果是这样,你遇到了什么问题?或者你在问这是否可行?

您描述的场景当然是可能的,您可以在脚本的参数列表中设置一个完整的SQL命令的数据文件,并使用“唯一”设置来划分运行的SQL语句并确保它们不会使用相同的。也可以在LoadRunner中创建自定义报告输出。您可以在脚本中创建函数,以使用lr_user_data_point()函数输出自定义报告数据。输出与分析工具中的任何其他时间轴数据跟踪报告类似。

答案 1 :(得分:0)

这是一个自然的问题,这是你的第一个问题,你对这个工具的培训水平是多少?解决方案集利用参数化引擎作为工具培训的一部分,以及交易时间模型,该参数化引擎作为标准产品培训的一部分进行了广泛讨论。如果你被要求在没有工具,过程和指导期的训练的情况下完成这项任务,那么你的成功几率渐渐逼近零。

解决方案路径:VB模板虚拟用户。您需要验证您的许可证是否允许使用模板虚拟用户选项。这也是一个程序化的解决方案,因此您需要具备适当的VB技能。使用Java虚拟用户以及难度更大的C虚拟用户也可以实现同样的目的。标准数据库虚拟用户在这里不合适,因为您在结果集中具有可能不同数量的列的SQL,因此您需要一个解决方案集,允许灵活地接收结果而不是在本机中找到的硬编码期望模型数据库虚拟用户。

有一个包含两列的参数文件:第1列是事务的短名称,第2列是查询。在虚拟用户中唯一地分发SQL查询。

您的虚拟用户个人资料

Init
{
Establish connection to the database server
}

Action
{
Rendezvous (policy, wait for at least 3)
delay a random number of milliseconds between 250 and 500 to account for human chaotic behavior
Start Transaction (Column 1)
Run My Query (Column 2)
Logic to pass pass|fail of transaction (End Transaction - PASS|FAIL)
}

End
{
Close my database connection
}

您应该知道,如果每个人都在同一时间执行某些操作,则用户不会同时运行。可能有用户彼此并发运行,但真正的同时性是每个人同时做同样的事情需要同步到时钟滴答。人类是混乱的工具,并不依赖于与其他人同步的内部时钟。

对于与SQL绑定的CPU,磁盘和其他指标,您需要利用可用于数据库平台的SQL分析工具。对于ORACLE,这是一份AWR报告。对于Microsoft SQL Server,它是恰当命名的SQL Profiler工具。 Sybase,DB2,MySQL等都具有相同的工具功能,只需从管理工具包中挖掘出来即可。

如果您只是想在测试期间监视服务器,那么这很简单。看看SiteScope与LoadRunner的集成。自8.1版以来,每个版本的LoadRunner都附带了500点Sitecope。您还可以直接查询表,例如ORACLE中的V $表或Microsoft / Sybase SQL server中的系统表,然后为要跟踪的信息创建DataPoints。

答案 2 :(得分:0)

单击资源管理器中的参数选项,现在单击新参数并将其命名为sql查询。

  1. 使用记事本点击编辑
  2. 填充您的SQL查询。
  3. 将参数设置保存并设置为每次迭代都是唯一的,并在其下方中止vuser。 4现在每个用户都会根据需要一个接一个地选择唯一值,如果用完了数值就会停止运行