是用于自动执行Web应用程序的负载运行程序,还是仅用于执行性能。

问题描述 投票:-1回答:2

到目前为止,我已经尝试过使用LoadRunner作为性能工具,我的朋友建议LoadRunner也将用于自动化QTP,selenium之类的Web应用程序。任何人都请按照上述条件分享您的知识。

loadrunner
2个回答
3
投票

您的朋友在结构上受到挑战。查看OSI模型和您的客户端体系结构。对于大多数协议,LoadRunner不在运行功能自动化工具的OSI应用程序层的顶层运行。

除了一些特定需求和接口的例外,性能测试工具作为一类被设计为在OSI模型的下层而不是在应用程序层的顶层运行。它们旨在重现应用程序发送到服务器的消息,而不必重现对话框上鼠标的单击(除非这是生成消息和加载的唯一必需方法)。 GUI往往非常昂贵,并且在某些情况下,每个主机甚至不能运行一个GUI实例,因此具有从应用程序中剥离消息生成的能力对于能够批量复制负载至关重要。主机与测试用户数之比小于1:1。

LoadRunner确实具有GUI虚拟用户,该用户使用QuickTest Professional(QTP)作为此类虚拟用户的实现模型。从历史的角度来看,在加入QTP之前,WinRunner和XRunner以及自动化的功能测试工具已用于此类用户。因此,这就是工具在GUI虚拟用户处交叉的地方,它将在OSI应用程序层的顶部运行。对于其余的虚拟用户类型(Citrix | RDP和Truclient除外),您将看到它们从应用程序层的API中间层传播到会话层(Winsock)。

虚拟用户映射到的堆栈(OSI模型)越高,则离GUI越近,并且每个虚拟用户执行测试的资源成本就越高。确实如此,与工具提供者无关。最终,您可以拥有一个虚拟用户,其虚拟负载的成本和资源要求与物理用户没有什么不同:每个主机一个虚拟用户。然后,这意味着需要500台计算机来执行500个虚拟用户测试。排他性地,此类测试将通过前端GUI针对在共享应用程序服务器空间中运行的应用程序(例如Citrix或RDP托管)具有恶意,并且其体系结构不适合于将客户端发送的消息捕获到客户端。服务器。这种对环境有害的应用非常罕见。


0
投票

在功能测试中,我们进行了很多验证。每个UI或API功能测试都会有很多验证点/检查点。实际上,选择功能测试工具的关键标准之一就是检查它是否提供了丰富的验证功能。如果我没有记错的话,LoadnRunner或任何其他性能测试工具均不打算/也不提供这些丰富的验证功能。他们可能会提供一些基本的信息,例如“查找文字”或“计数出现次数”。

此外,我已经观察到设计性能测试要比功能测试花费相对更长的时间。

[虽然考虑到以上两个原因,但由于使用LoadRunner进行功能测试非常诱人,因为LoadRunner脚本的运行速度比UI测试(Selenium / UFT)快,所以我不建议这样做。

免责声明:截至2020年3月,我仅具有性能测试或LoadRunner / JMeter的基本知识

© www.soinside.com 2019 - 2024. All rights reserved.