【5.20】四、性能测试—性能测试工具

目录

4.5 性能测试工具

4.5.1 LoadRunner

4.5.2 JMeter


4.5 性能测试工具

性能测试是软件测试中一个很重要的分支,人们为了提高性能测试的效率,开发出了很多性能测试工具。一款好的测试工具可以极大地提高测试效率,为发现软件缺陷提供重要依据。两个比较常用的性能测试工具:LoadRunner和JMeter。

4.5.1 LoadRunner

LoadRunner是一款适用于各种体系架构的性能测试工具,它能预测系统行为并优化系统性能,其工作原理是通过模拟一个多用户(虚拟用户)并行工作的环境来对应用程序进行负载测试。测试完成,LoadRunner可以自动生成分析报告,给用户提供软件产品所需要的性能信息。

相比于其他性能测试工具LoadRunner主要有以下特点

  • (1)广泛支持业界标准协议。
  • (2)支持多种平台开发的脚本。
  • (3)可创建真实的系统负载。
  • (4)具有强大的实时监控与数据采集功能。
  • (5)可以精确分析结果,定位软件问题。

LoadRunner好用且功能强大,唯一美中不足的是它不是开源产品,使用LoadRunner的用户需要向HP公司付费。

LoadRunner工具主要由3部分组成:

1. VuGen(Virtual User Generator)

LoadRunner是通过多个虚拟用户在系统中同时工作或访问系统的环境来进行性能测试的,虚拟用户进行的操作通常被记录在虚拟用户脚本中,而VuGen就是用于创建虚拟用户脚本的工具,因此它也被称为虚拟用户脚本生成器。

2. Controller

Controller用于创建和控制LoadRunner场景,场景负责定义每次测试中发生的事件,包括模拟的用户数、用户执行的操作以及测试要监控的性能指标等。

3. Analysis

Analysis是LoadRunner的数据分析工具,它可以收集性能测试中的各种数据,对其进行分析并生成图表和报告供测试人员查看。

4.5.2 JMeter

JMeter的工作原理与LoadRunner类似,它也是通过模拟出多个虚拟用户向服务器发送请求检测响应返回情况,如并发用户数、响应时间、资源占用情况等,以此检测系统的性能。

与LoadRunner不同的是,JMeter工具通过线程组创建虚拟用户,一个线程组可以设置多个线程,每个线程就是一个虚拟用户,这些线程相互独立,互不影响。虚拟用户向服务器发送一个请求,JMeter称之为一次采样,这个操作由采样器来完成。

JMeter工具主要由以下几个核心组件构成:

  • (1)逻辑控制器(Logic Controller):逻辑控制器确定采样器的执行顺序。
  • (2)配置元件(Config Element):配置元件可用于设置默认属性和变量等数据,供采样器获取所需要的各种配置信息。
  • (3)前置处理器(Per Processors):在实际的请求发出之前,对即将发出的请求进行特殊的处理。
  • (4)定时器(Timer):用于在操作之间设置等待时间。
  • (5)采样器(Sampler):采样器是JMeter的主要执行组件,它用于向服务器发送一个请求,并记录响应信息,包括成功/失败、响应时间、数据大小等。
  • (6)后置处理器(Post Processors):后置处理器一般放在采样器之后,用来处理服务器的返回结果。
  • (7)断言(Assertions):断言用于检查测试得到的数据是否符合预期结果。
  • (8)监听器(Listener):用于监听测试结果。此外,监听器还具备查看、保存和读取测试结果的功能。

使用JMeter进行性能测试时,在线程组中设置好相关参数,并通过配置元件、前置处理器、定时器、断言等组件设置其他的参数信息,然后使用采样器发送请求,通过后置处理器、断言、监听器等组件分析查看测试结果。


与LoadRunner相比,JMeter是一款开源免费的轻量级工具安装简单,并且支持二次开发,但是在性能测试过程中,JMeter的录制功能、环境调试功能与LoadRunner都存在一定差距,而且JMeter的报表较少,结果分析也没有LoadRunner详细

你可能感兴趣的:(软件测试,测试工具,压力测试)