LoadRunner

LoadRunner is the premium, market leading performance testing solution for project teams.

特性

  • 支持广泛的应用程序

极大地减少了在负载测试软件中模拟用户事务所需的时间和技能。

  • 各种各样的连续测试

将负载测试集成到开发工具中:IDE、jUnit、nUnit、Jenkins、Selenium和Microsoft Visual Studio。 从12.55版本开始,您可以运行您的JMeter脚本,并在任何性能测试中集成JMeter和附加的脚本类型。

  • 根本原因分析

通过使用无缝集成的实时性能监控器来识别性能瓶颈,这些监控器利用应用程序层和代码级数据进行根源和分析。

LoadRunner使用初探

chat

详细介绍一下 LoadRunner

LoadRunner 是一款由Micro Focus(前身为Hewlett-Packard)开发的性能测试工具,用于模拟和评估应用程序在不同负载条件下的性能。

LoadRunner具有强大的功能集,适用于各种类型的应用程序和协议。

以下是LoadRunner的一些详细介绍:

1. 主要特点:

1.1 支持多种协议:

LoadRunner支持多种协议,包括Web(HTTP/HTTPS)、数据库(JDBC)、消息队列(MQ Series、JMS)、ERP/CRM系统等,使其能够适用于不同类型的应用。

1.2 分布式负载测试:

LoadRunner可以在多个地理位置的虚拟用户之间分布负载,以更真实地模拟用户分布和实际使用情况。

1.3 实时性能监控:

LoadRunner提供实时性能监控和分析功能,包括事务响应时间、服务器资源利用率、数据库性能等指标,用于实时追踪应用程序的性能。

1.4 强大的脚本录制和回放:

LoadRunner能够自动录制用户在应用程序上的操作,生成可重放的脚本,支持多种客户端技术和浏览器。

1.5 参数化和数据驱动:

LoadRunner允许用户对测试数据进行参数化,以模拟不同的用户行为。还支持数据驱动测试,通过外部数据源动态地注入数据。

1.6 场景设计和调度:

用户可以使用LoadRunner设计测试场景,确定并发用户数、负载模型、持续时间等。可以设置负载测试的计划和调度。

1.7 报告和分析:

LoadRunner生成详细的测试报告,包括性能指标、事务响应时间、错误率等,以帮助用户分析测试结果并做出优化决策。

1.8 支持多平台和技术:

LoadRunner支持多种平台和技术,包括Java、.NET、SAP、Citrix等,覆盖了广泛的应用程序类型。

2. 组成部分:

2.1 Virtual User Generator (VUGen):

  • 用于录制和创建虚拟用户脚本的工具。

2.2 Controller:

  • 用于设计测试场景、设置负载和调度的组件。

2.3 Load Generator:

  • 用于模拟虚拟用户并执行测试的组件。

2.4 Analysis:

  • 用于分析和生成测试结果报告的工具。

3. 使用步骤:

  1. 录制脚本: 使用VUGen录制用户在应用程序上的操作,生成虚拟用户脚本。

  2. 设计场景: 使用Controller设计测试场景,设置负载、并发用户数、测试持续时间等参数。

  3. 执行测试: 在Controller中执行测试,Load Generator模拟虚拟用户并向目标应用程序发送请求。

  4. 分析结果: 使用Analysis工具分析测试结果,生成报告并识别性能瓶颈。

4. 优势和适用场景:

  • 全面的支持: LoadRunner支持多种协议和技术,适用于不同类型的应用程序,包括Web、数据库、消息队列等。

  • 分布式测试: 能够在多个地理位置模拟用户,实现更真实的负载测试。

  • 强大的监控和分析: 提供实时性能监控和详细的测试分析功能,有助于发现性能问题。

  • 自动化脚本录制: 能够自动录制用户操作,生成可重放的脚本,降低脚本创建的复杂度。

  • 适用于大型企业应用: LoadRunner在大型企业中广泛应用,特别是对于复杂、分布式的业务系统。

LoadRunner 是一个强大的性能测试工具,适用于对应用程序的性能和可靠性进行深入评估的场景。

LoadRunner 和 jmeter 的对比详细表格

下面是LoadRunner和JMeter之间的一些对比,这里提供了一些基本的对比要素,但请注意,具体选择应该取决于项目需求、团队技能、性能要求等多个因素。

这个表格只是为了提供一些基本的比较,具体的选择可能需要更深入的分析和评估。

对比要素 LoadRunner JMeter
开发公司 Micro Focus (前身为Hewlett-Packard) Apache Software Foundation
协议支持 多种协议,包括Web、数据库、消息队列等 多种协议,包括HTTP、FTP、JDBC等
录制和脚本设计 VUGen工具用于录制和创建虚拟用户脚本 HTTP(S)脚本可以通过录制或手动创建
分布式负载测试 是,可分布式执行测试 是,支持分布式负载测试
实时监控和分析 有实时性能监控和Analysis工具进行详细分析 有实时性能监控和图形化报告,但不如LoadRunner全面
脚本复杂度 相对较高,学习曲线较陡 相对较低,学习曲线相对平缓
灵活性和可扩展性 相对较低,但支持丰富的插件 相对较高,支持插件和扩展
开源与商业许可 商业许可,需要购买 开源,免费使用
支持平台 Windows、Linux 跨平台,支持Windows、Linux、Mac等
应用场景 适用于大型企业应用、复杂系统 适用于中小型项目、轻量级负载测试

我平时接触测试性能压测都是用 jmeter,很少见到 loadrunner,为什么?

有几个原因可能解释为什么在某些情况下更常见到使用JMeter而不是LoadRunner:

  1. 成本:
    • LoadRunner: 是商业性能测试工具,使用它需要购买许可证,而这可能对于一些项目来说成本较高。
    • JMeter: 是一个开源工具,免费使用,因此在预算有限的项目中更为受欢迎。
  2. 学习曲线:
    • LoadRunner: 相对于JMeter,可能有一个较为陡峭的学习曲线。LoadRunner的使用可能需要一些培训和时间来熟悉。
    • JMeter: 是一个相对容易上手的工具,它的学习曲线相对平缓,因此在项目时间紧张或者团队对性能测试经验有限时更容易被采纳。
  3. 开源社区和生态系统:
    • JMeter: 有着庞大的开源社区和丰富的生态系统。用户可以从社区获取支持、分享经验,并且有许多可用的插件和扩展。
    • LoadRunner: 作为商业工具,其用户社区相对较小,可用的插件和扩展相对较少。
  4. 支持的协议:
    • JMeter: 支持常见的协议,对于许多应用场景已经足够。但在一些特定的企业级应用场景中,LoadRunner支持更广泛的协议和技术。
    • LoadRunner: 在支持各种协议和技术方面更为全面,因此对于某些特殊的大型企业系统可能更为适用。
  5. 轻量级负载测试需求:
    • 对于一些小型项目或者对性能测试需求相对简单的场景,JMeter提供了足够的功能,而LoadRunner可能显得过于强大和繁琐。

总的来说,选择性能测试工具通常是根据具体的项目需求、团队技能和预算来做出的。

在某些情况下,使用JMeter是因为其开源、轻量级和易用的特性,而在其他情况下,LoadRunner可能更适合复杂的企业级应用场景。