LoadRunner 压力测试
一、环境准备
优化操作系统(centOS)
1、执行命令
sudo modprobe -r xt_NOTRACK nf_conntrack_netbios_ns nf_conntrack_ipv4 xt_state
sudo modprobe -r nf_conntrack
2、使用文本编辑器打开 /etc/ 修改 _max_tw_buckets 的值
_max_tw_buckets= 16000
修改 nginx 配置
(只在压力测试使用,测试完毕后恢复)
1、找到以下条目,修改值
proxy_connect_timeout 600;
proxy_send_timeout 600;
proxy_read_timeout 600;
2、修改 upstream 中的值
server :8003 max_fails=15 fail_timeout=160s weight=1 srun_id=03;
jvm_route $cookie_JSESSIONID reverse;
修改
(只在压力测试使用,测试完毕后恢复)
在 RPCServices 节点中添加 disablesid="true"
例:<RPCServices disablesid="true">
修改项目登录页面
去除登录页面的图片验证码
二、Loadrunner 安装之前
安装要求
1、Loadrunner(主控机和压力机)必须安装在 windows2003 server 版本下
2、必须安装 IE 浏览器,建议为 IE6版本,其他版本在脚本录制过程中会出现打不开 IE 的
情况
安装虚拟光驱
1、安装过程
2、使用过程
双击任务栏图标 打开 DTlite 管理界面,点击添加图标加载 iso 文件
安装 .NET SP1
LoadRunner11 需要 .NET SP1 的支持,如果在 loadrunner 安装过程出现异常,
请预先安装 .NET SP1
三、LoadRunner 安装
Loadrunner 安装包括两部分:主控机安装和压力机安装。主控机提供脚本录制、脚
本调试、脚本运行、报告生成等功能。压力机负责运行脚本,压力机只能通过加入到主
控机中工作。一般在一次测试过程中,只安装一台主控机,根据测试需要,可安装多台
压力机,且主控机和压力机分别安装在独立的机器上。安装多台压力机的作用是将客户
端的压力(cpu、网络等)分布到多台机器上。
主控机的安装
请点击 “LoadRunner 完整安装程序”,然后按照提示信息一步步操作,过程略
加压机的安装
请点击 “Load Generator”,然后按照提示信息一步步操作,过程略
破解过程
成功安装主控机和压力机后,需要完成以下破解过程(非正版)
1、将 覆盖到安装目录下,例如:
2、运行 lr 删除注册表 目录下的 exe 文件,将默认的 lic 消除
3、运行 loadrunner ,为其加载 lic
4、Loadrunner 的序列号见 安装目录下
通常使用:AEABEXFR-YTIEKEKJJMFKEKEKWBRAUNQJU-KBYGB
四、录制脚本(Virtual User Generator)
启动 Virtual User Generator
创建 web 脚本录制器
Program to record :设置录制对象的程序,选择 IE 浏览器
URL Adrress:项目的 URL 地址,输入项目的登录地址
点击 Options 设置如下选项:
1、脚本录制方式
2、选择 UTF-8 编码
开始录制脚本
脚本录制过程从点击 Start Recording 窗口中的 ok 按钮开始,此时 loadrunner 会打开 IE
浏览器并打开 url address 中的路径。一般情况下,此路径为项目的登录路径,输入登录用
户名和密码进行登录,此时 loadrunner 会自动记录你的操作过程,你只需点击项目中需要测
试的功能模块,直到登出系统为止。完成测试页面操作后,点击 loadrunner 停止按钮
退出录制过程,之后 loadrunner 将自动生成测试脚本。
脚本录制工具栏说明:
:录制按钮,如果当前录制状态处于暂停时,点击此按钮后进入录制状态。
:停止按钮,当完成脚本录制过程时,点击此按钮退出录制
:暂停按钮,点击此按钮后将挂起(暂停)录制,直到点击 录制按钮 后,
进入录制状态。
:动作(Action),点击此按钮新增加一个动作,将不同的功能的代码分别放入
各自的动作中,不常使用。
:开始事务按钮
:结束事务按钮
调试测试脚本
1、点击 运行 按钮 执行刚录制的脚本,并从日志窗口中查看是否有错误输入
2、查看日志窗口
3、保存脚本数据
创建事务
事务是 loadrunner 中重要的功能项,loadrunner 通过对事务进行统计,从而计算出每个
事务的用时情况,事务分为开始事务和结束事务,必须成对出现,事务的开始和结束之间,
必须包含一次或多次请求。例如,我们将项目的登录过程作为一次事务,将某个查询作为一
次事务。事务的创建可以脚本录制过程中创建,也可以在完成脚本录制之后,采用插入事务
方式创建事务。以下示例将创建 trans_init trans_login trans_main trans_logout 四个事务。
1、创建 trans_init 事务,将登录之前的脚本归纳为 init 事务
2、 创建 trans_login 事务,创建方法同上,以下展示脚本的位置
3、创建 trans_main 事务
4、创建 trans_logout 事务
保存脚本
将当前脚本保存,之后可在执行测试过程中提供给 controller 使用。
保存成功后,可以点击 Tool 菜单 下的 Create Controller.....进入压力测试场景控制器
五、执行测试(Controller)
执行环境介绍
第一步:加载压力机
压力机是安装在其他机器上的,需要在当前的主控机中加载进来,并设置压力机使用的脚本
文件,压力机最大用户数。
第二步:验证压力机的状态
第三步:设置压力机运行参数
针对每个压力机设置运行参数:
第四步:设置运行场景
运行场景用于设置加载用户的速度控制、持续加压时间控制、用户退出控制
第五步:运行测试
第六步:生成测试结果
在测试过程中,请自行通过其他工具抓取应用服务器、数据库服务器的资源使用视图
当测试结束后,通过 Loadruner Controller 生成测试结果。
六、测试结果(Analysis)
1、总览
2、测试用户的数据
3、每秒点击数
4、其他测试数据
5、生成 html 报告