loadrunner-介绍

时间秒杀一切 提交于 2020-02-05 00:11:28

loadrunner的简介

LoadRunner,是一种预测系统行为和性能的负载测试工具。通过模拟上千万用户实施并发负载及实时性能监测的方式来确认和查找问题,LoadRunner能够对整个企业架构进行测试。企业使用LoadRunner能最大限度地缩短测试时间,优化性能和加速应用系统的发布周期。

loadrunner的录制原理

自动监控指定URL或者应用程序所发出的请求级服务器返回响应,它作为一个第三方监控客户端与服务端的所有对话,然后把这些对话记录下来,生成脚本,再次运行时模拟客户端发出的请求,捕获服务器端的响应

loadrunner的默认支持的开发语言:c
loadrunner的三大组件
virtual user generator(虚拟用户脚本生成器)
controller (场景控制器)
analysis(结果分析器)

loadrunner的工作原理

loadrunner由四大组件组成:vugen、控制器、负载发生器、分析器

1、VuGen发生器:捕获用户的业务流,并最终将其录制成一个脚本

  • 1、选择相应的一种协议
  • 2、模拟用户业务操作,生成一个脚本
  • 3、优化脚本和设置Run-Time-Setting
  • 4、验证脚本的正确性

2、控制器(controller)

  • 1、设计场景:包括手动场景设计和目标场景设计两种方式
  • 2、场景监控,可以实时监控脚本的运行的情况,可以通过添加计数器来监控Windows资源、应用服务器和数据库使用情况
    场景设计的目的是设计出一个最接近用户实际使用的场景,场景设计越接近用户,使用的实际情况,测试出来的数据就越接近真实值。

3、负载发生器(load generators)
运行场景,模拟用户对服务器提交请求,通常,在性能测试过通常会将控制器和负载发生器分开;当使用多台负载发生器时,一定要保证负载均衡(指在进行性能测试的过程总,保证每台负载发生器均匀地对服务器进行施压)

4、分析器(analysis)
主要用于对测试结果进行分析

loadrunner常用术语

1、场景:场景即测试场景。
2、负载发生器:用来产生压力的机器,受controller控制,可以使用户脚本载不同的主机上执行。
3、虚拟用户:对应现实中的真实用户,使用loadrunner模拟的用户成为虚拟用户。
4、虚拟用户脚本:通过vuser generator录制和开发的脚本。
5、事务:测试人员可以讲一个或多个操作定义为一个事务,可以通俗的理解事务为“人为定义的一系列请求(请求可以是一个或者多个)”。loadrunner根据事务的开头和结尾标记,计算事务响应时间、成功/失败的事务数。lr_start_transaction(“login”) > lr_end_transaction(“login”,LR_AUTO);
6、思考时间:即请求与请求之间的停顿时间。实际中,用户在进行一个操作后往往会停顿然后在进行下一个操作,为了更真实的模拟这种用户行为而进行该概念。在虚拟用户脚本中用函数lr_think_time()来模拟用户处理过程,执行该函数用户线程会按照响应的time值进行等待。
7、集合点:设集合点是为了更好模拟并发操作,设了集合点后,运行过程中多个用户可以在集合点等待到一定条件后在一起发后续的请求。集合点在虚拟用户脚本中对应的函数lr_rendezvous()
8、负载测试:通过逐步增加系统负载,测试系统性能的变化,并最终确定在满足性能指标的情况下,系统所能承受的最大负载量的测试
9、压力测试:通过逐步增加系统负载,测试系统性能变化,并最终确定在什么负载条件下性能处于失效状态,并以此来获得系统能够提供的最大服务级别的测试
10、配置测试:通过对被测系统软硬环境的调整,了解各种不同环境对系统性能的影响程度,从而找到系统各项资源的最优分配原则。(该方法在每执行测试 时更换,扩充硬件设备,调整网络环境,从而确定各个因素对系统性能的隐形,找出影响最大的因素)
11、可靠性测试(稳定性测试):通过给系统加载在一定的业务压力,(例如资源在70%~90%d 使用率)的情况下,在压力测试基础上让系统持续运行一段时间,测试系统在这种条件下是否能够稳定运行。

loadrunner测试流程

规划测试(计划、用例…)=> 创建VU脚本 => 定义场景 => 运行场景 => 分析结果

loadrunner之协议分析器

当你录制脚本的时候都需要选择正确的协议,如果选择错误可能会录制不到脚本或者录制的脚本数量很少,loadrunner有自带的一个协议分析器,可以获取协议信息。
以loadrunner的飞机订票系统为例:
先打开服务
在这里插入图片描述
在打开loadrunner准备录制脚本分析协议
在这里插入图片描述
由图可以看到主要用到了web(http/html)协议
在这里插入图片描述

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!