QTP LoadAndRunAction - 来自被叫方运行结果的被叫方部分的交易时间?

时间:2010-12-17 17:48:06

标签: qtp load-testing loadrunner lr

如果我使用LoadAndRunAction从另一个测试A调用操作X,是否正确报告了在被调用操作中收集的事务时间?

即。如果我将这样的调用者脚本A插入到LoadRunner场景中,那么LoadRunner的结果报告是否包括在测试A和操作X中测量的事务时间?

老实说,我只是在问,因为我懒得测试这个特别的。

背景:我们有一些LR szenarios使用QTP脚本来模拟GUI用户活动。那些QTP脚本非常大,并且一次又一次地部署到每个负载生成器。我们的想法是手动部署大型QTP测试,并编写一个称为大测试的紧凑型QTP测试,并将该兼容测试插入到LR场景中。

1 个答案:

答案 0 :(得分:1)

好的,既然我自己找到了答案,分享它们是公平的:

LoadAndRunAction没有正确报告其交易时间,调用者看不到被调用者中测量的交易。

但是,您可以使用传统的操作调用来调用目标操作。但是,除了最琐碎的callees之外,这不起作用,因为LoadRunner Controller以某种方式混淆了调用者和被调用者之间的依赖关系,试图将调用者的东西部署到不存在的负载生成器。

我们的解决方案是创建一个愚蠢的QTP调用者脚本A,它调用第二个QTP测试B,除了调用“真正的”QTP测试C之外什么都不做,所有这些都使用“插入调用外部操作”。那就是:

  • 使用已经拥有C
  • 的QTP机器开发A和B.
  • 将A和B复制到控制器
  • 将A插入方案
  • 预先部署(即仅复制)B和C到所有负载生成器

结果:LoadRunner成功将A部署到Load Generator并执行它。 A调用B测试,然后调用C.C执行事务,通过B和A向事件的运行结果报告。任务完成。 (当然,B和C需要存储在所有机器上完全相同的路径中,A和B中的动作引用必须基于绝对路径而不是相对路径。)

当然,必须注意修改B或C.每个修改必须手动分配给所有其他负载生成器。 A可以按常规方式更新(因为它总是会被部署)。