一、 组件:
(一) VuGen:用于捕获最终用户业务流程和创建怎动化性能测试脚本。
1. 录制脚本:
(1) 集合点Rendezvous
(2) 验证点Check Point:文本验证点Text Check、图片验证点Image Check
(3) 事务Transaction:事务开始Start Transaction、事务结束End Transaction
(4) 注释与消息Comment & Message:/***/
2. 增强并编辑Vuser脚本
(1) 参数化:
在Select next now中的参数:Sequential顺序、Random随机、Unique唯一
在Update value on 参数:Each iteration每次迭代、Each occurrence每次出现、Once 一次
(2) 从数据库中导入数据
3. 配置动行时设置Runtime settings(运行时设置)
(1) Number of Iterations:迭代次数
(2) 在Preferences中的Enable image and text check在脚本中添
加验证点时必须选中。
4. 在独立模式下运行Vuser脚本
5. 集成Vuser脚本
(二) Controller:用于组织、驱动、管理和监控负载测试。
1. 创建方案
(1) 创建手动方案
(2) 创建百分比模式方案
(3) 创建面向目标的方案
2. 计划方案
(1) 开始时间
(2) 方案运行设置:加压Ramp Up、持续时间Duration、减压Ramp Dowm
3. 运行方案
4. 监视方案
(1) RuntimeGraphs(运行时图)
A. Running Vusers运行时图:Running正在运行的Vuser总数、Ready完成脚本初始化部分、即可以运行的Vuser数、Finished结束运行的Vuser数,包括通过的和失败的、Error执行时发生的错误Vuser
B. Transaction Graphs事务监视图:Trans Response Time事务响应时间、Trans/Sec(Passed)每秒事务数(通过)、Trans/Sec(Failed/Stopped)每秒事务数(失败、停止)、
Total Trans/Sec(Passed)每秒事务总数(通过)。
(2) Web资源监视
A. Hits per Second第秒点击次数图:
B. Throughput吞吐量图:
C. HTTP Responses per Second每秒HTTP响应数图
代码列表:
代码 Meaning 中文描述
200 OK 正常
302 Moved Temporarily 已找到
403 Forbidden 禁止
404 Not Found 未找到
408 Request Timeout 请求超时
500 Internal Server Error 内部服务器错误
(3) 系统资源监视
A. 配置Windows 资源监视器
B. 配置UNIX 资源监视器
(三) Analysis:用于用户查看、分析和比较性能测度信息结果数据。
1. Vuser图
(1) Runtime Vusers 运行的Vuser图
(2) Vuser摘要图
(3) Rendezvous集合图
2. Errors错误图
(1) Error Statistics错误统计图
(2) Errors per Second每秒错误图
3. Transaction事务图
(1) Average Transaction Response Time平均事务响应时间图
(2) Transactions per Second 每秒事务图
(3) Total Transactions per Second 每秒事务总数图
(4) Transaction Summary 事务摘要图
(5) Transaction Performance Summary事务性能摘要图
4. Web Resource Graphs (Web 资源图)
(1) Hits per Second 每秒点击次数图
(2) Throughput吞吐量图
(3) HTTP Status Code Summary HTTP状态代码摘要图
(4) HTTP Responses per Second 每秒HTTP响应数图
5. Web Page Breakdown网页细分图
(1) Web Page Breakdowm 网页细分图
(2) Page Component Breakdowm 页面组件细分图
(3) Page Dowmload Time Breakdown页面下载时间佃分图
(4) Time to First Buffer Breakdown第一次缓冲细分时间图
6. System Resources系统资源图
(1) Windows 资源图
(2) UNIX资源图
7. Analysis报告
(1) Summary Report摘要报告(Excel格式)
(2) HTML Report(HTML格式报告)
(3) Microsoft Word Report(Word 格式报告)
(4) Crystal Report(水晶报表格式报告)
二、 术语
1、 Scenario:场景
2、 Vuser:虚拟用户
3、 Vuser脚本
4、 Transaction:事务
5、 Rendezvous:集合点
6、 Check point:检查点
7、 Correlation:关联
三、 负载测试过程
1、 制定负载测试计划
2、 创建Vuser脚本
3、 创建方案
4、 运行方案
5、 监视方案
6、 分析测试结果
第一章 Load Runner 安装与简介
一、Load Runner 的组件:
1. Virtual User Generator(VuGen):用于捕获最终用户业务流程和创建自动化性能测试脚本
2. Load Runner Controller:用于组织、驱动、管理和监控负载测试
3. Load Runner Analysis:用于用户查看、分析和比较性能测试结果数据
二、Load Runner 的术语:
1. Scenario(场景)
2. Vuser(虚拟用户)
3. Vuser脚本
4. Transaction(事务)
5. Rendezvous(集合)
6. Check point(检查点)
7. Correlation(关联)
四、 Load Runner负载测试过程:
1. 制定负载测试计划
2. 创建Vuser脚本
3. 创建方案
4. 运行方案
5. 监视方案
6. 分析测试结果
五、 Load Runner 的三大模块功能:
1. Create / Edit Scripts:创建VuGen
2. Run Load Tests:创建Controller
3. Analyze Load Tests:创建Analysis
第二章 VuGen 脚本创建
一、Load Runner 脚本开发步骤:
1. 录制基本Vuser脚本
2. 增强并编辑Vuser脚本
3. 配置运行时设置
4. 在独立模式下运行Vuser脚本
5. 集成Vuser脚本
二、Load Runner脚本的2种视图:
1. Script View:脚本视图
2. Tree View:树视图
三、 集合点(Rendezvous):
Insert → Rendezvous
注:只能向Action部分添加集合点
四、 验证点(Check Point):
1. 文本验证点:
Insert → New Step…,在弹出对话框中双击Web Checks,点击Text Check
以对象本身作为参照物,如 your name is jack
Right what left
2. 图片验证点:
Insert→New Step…,在弹出对话框中双击Web Checks,点击Image Check
ALT attribute:点击图片时,图片上显示的文本信息
SRC attribute:图片的路径,不能重名
五、事务(Transaction):
Insert → Start Transaction / End Transaction
注:在定义的事务中,尽量避免不必要的操作,影响事务的统计数据
六、注释与消息(Comment & Message):
1. 注释:
(1) Insert → Comment
(2) // 或 /* */
2. 日志消息:
Insert → Log Message,日志消息将显示在输出窗口
3. 调试消息:
Insert → New Step…,在弹出对话框中选择Debug Message
4. 错误消息 / 输出消息
插入错误消息函数:Ir_error_message();
插入输出消息函数:Ir_output_message();
注:通常不要在事务内部发送消息,这样将使事务执行的时间变长,从而影响事务数据的可靠性
七、录制脚本的2种模式:
1. HTML模式:默认模式,基于浏览器的应用程序
2. URL模式:不支持验证点,基于浏览器的应用程序中包含JavaScript和HTTPS安全协议
Tools → Recording Options,选择Recording
八、运行时设置(Runtime Settings):
Vuser → Runtime Settings 或快捷键F4
Run Logic选项:Number of Iterations:迭代次数
迭代10次,Action为10,其他不变
Preferences选项:Enable Image and text check:如果脚本中添加了验证点,则必须选中该选项,否则在运行时不执行该验证语句
第三章 VuGen 高级应用
一、设置参数化的2种方式:
1. 创建好脚本后,在脚本视图中双击选择函数中需要参数化的变量,右键选择Replace with a parameter
2. 在树视图中进行参数化设置
输入参数名,选择文件类型后,点击Parameter List,数据可以手动(Edit
with Notepad)添加与从数据库导入(Data Wizard)
二、参数属性:
1. Select next row中:
(1) Sequential(顺序):VuGen脚本中使用
(2) Random(随机):VuGen脚本中使用
(3) Unique(唯一):Controller中使用
2. Update value on中:
(1) Each iteration(每次迭代):VuGen脚本中使用
(2) Each occurrence(每次出现):VuGen脚本中使用,每次迭代换新值
(3) Once(一次):Controller中使用
VuGen:正常 Sequential和Each iteration
Controller:必须 Unique和Once,迭代次数通常为1
三、数据关联:
1. 自动关联:
Tools → Recording Options,选择Correlation选项,选中Enable correlation during recording
注:只适用于使用Web、DB等少数协议录制的脚本,对socket等协议录制的脚本不起作用
2. 手动关联:
Tools → Compare with vuser,添加脚本后在WinDiff窗口中分析不同
四、常用Web函数:
1. 缓存函数:
Web_cache_cleanup() 清除缓存中的内容
2. 操作函数:
Web_image 在定义的图像上模拟鼠标点击
Web_link 在定义的文本链接中模拟鼠标点击
Web_submit_data 执行“无条件”或“无上下文”的表单提交
Web_submit_form 模拟表单的提交
Web_url 加载由URL属性指定的URL
3. Cookie函数:
Web_add_cookie 添加新的cookie 或修改现有的cookie
Web_cleanup_cookies 删除当前由Vuser存储的所有cookie
Web_remove_cookie 删除指定的cookie
4. 并发组函数:该函数必须同时使用
Web_concurrent_start 标记并发组的开始
Web_concurrent_end 标记并发组的结束
5. 消息函数:
Lr_debug_message 将调试消息发送到输出窗口
Lr_error_message 将错误消息发送到输出窗口
Lr_log_message 将输出消息直接发送到output.txt文件
Lr_message 将消息发送到Vuser日志和输出窗口
第四章 Controller 设计方案
一、3种创建方案:
1. 手动创建方案(Manual Scenario):可按组做
2. 百分比模式方案(Percentage Mode):不能按组做
3. 面向目标创建方案(Goal-Oriented Scenario)
二、面向目标的方案中,用户定义的5种类型:
1. 虚拟用户数
2. 每秒点击次数:仅适用于Web Vuser
3. 每秒事务数
4. 每分钟页面数:仅适用于Web Vuser
5. 方案的事务响应时间
三、Controller的2种视图:
1. Design(详细)
2. Run(运行)
第五章 Controller 运行方案
一、启用IP Spoofer (IP欺骗):
步骤:1. 开始→ 程序→ Mercury Load Runner→ Tools→ IP Wizard,出现对话框
2. 选择Create new setting→ 下一步→ 输入Web Server的IP地址和需要模拟的IP地址→ 完成
3. 在Controller中:Scenario→ Enable IP Spoofer
二、监视Vuser状态:
Status(状态) Description(描述)
Down(关闭) Vuser处于关闭状态
Pending(挂起) Vuser已经准备就绪,开始进行初始化
Init(初始化) Vuser正在初始化
Ready(就绪) Vuser已初始化,准备运行
Run(运行) Vuser正在运行,所有脚本通过负载生成器执行
Rendez(集合点) Vuser已经到达了集合点,等待释放
Passed(通过) Vuser运行结束,脚本运行成功
Failed(失败) Vuser运行失败,脚本运行失败
Error(错误) Vuser运行时发生错误
Gradual Exiting(逐步退出) Vuser正在完成退出前所运行的迭代或操作
Exiting(退出) Vuser运行结束,正在退出
Stopped(停止) Vuser调用Stop命令后全部停止工作
第六章 Controller 监视方案
一、Controller中默认显示的4个监视器图:
1. Running Vusers(运行时图)
2. Trans Response Time(事务图)
3. Hits per Second(每秒点击次数图)
4. Windows Resources(Windows 系统资源图)
二、合并图:
在监视器窗口中任意选中一个监视器图,右键Overlay Graphs
注:选择两图合并时,X轴的度量单位必须相同
三、运行时和事务监视:
1. Runtime Graphs(运行时图)
(1) Running:当前负载生成器中正在运行的Vuser总数
(2) Ready:完成脚本初始化部分,即可以运行Vuser数
(3) Finished:结束运行的Vuser数,包括通过的和失败的Vuser
(4) Error:执行时发生的错误Vuser数
2. Transaction Graphs(事务监视图)
(1) Trans Response Time:事务响应时间
(2) Trans/Sec(Passed):每秒事务数(通过)
(3) Trans/Sec(Failed):每秒事务数(失败、停止)
(4) Total Trans/Sec(Passed):每秒事务总数(通过)
四、Web资源监视器:
1. Hits per Second(每秒点击次数图)
2. Throughput(吞吐量图)
3. HTTP Responses per Second(每秒HTTP响应数图)
代码列表:
代码 Meaning 中文描述
200 OK 正常
302 Moved Temporarily 已找到
403 Forbidden 禁止
404 Not Found 未找到
408 Request Timeout 请求超时
500 Internal Server Error 内部服务器错误
五、 系统资源监视:
1. 配置Windows资源监视器
2. 配置UNIX资源监视器
第七章 Analysis基本图表
一、Analysis图设置:
1. 配置度量属性(Y轴,纵轴)
View→ Configure Measurements
2. 配置数据粒度(X轴,横轴)
View→ Set Granularity,粒度越小,结果越详细
3. 确定点的坐标
4. 打印图
二、Vuser图:
1. Runtime Vusers (运行的Vuser图)
2. Vuser摘要图
3. Rendezvous(集合图):加压,不用集合点;并发,用集合点
三、Errors(错误图)
1. Error Statistics(错误统计图)
2. Errors per Second(每秒错误图)
四、 Transaction(事务图)
1. Average Transaction Response Time(平均事务响应时间图)
2. Transactions per Second (每秒事务图)
3. Total Transactions per Second (每秒事务总数图)
4. Transaction Summary (事务摘要图)
5. Transaction Performance Summary(事务性能摘要图)
第八章 Analysis高级图表
一、Web Resource Graphs (Web 资源图)
1. Hits per Second (每秒点击次数图)
2. Throughput(吞吐量图)
3. HTTP Status Code Summary HTTP(状态代码摘要图)
4. HTTP Responses per Second (每秒HTTP响应数图)
二、Web Page Breakdown(网页细分图)
1. Web Page Breakdown (网页细分图)
2. Page Component Breakdown (页面组件细分图)
3. Page Download Time Breakdown(页面下载时间细分图)
4. Time to First Buffer Breakdown(第一次缓冲细分时间图)
三、System Resources(系统资源图)
Controller默认的第4张图,加local host(本机负载),删除第1个错误
1. Windows 资源图
对象 度量 描述
System %Total Processor Time 系统上所有处理器都忙于非空闲线程的平均时间的百分比
Processor %Processor Time(windows 2000) 处理器执行非空闲线程的时间百分比
System File Data Operation/sec 计算机向文件系统设备发出读取和写入操作的速度
System Processor Queue Length 线程单元中的处理器队列的即时长度
Memory Page Faults/sec 处理器中的页面错误的计数
Physical disk % Disk Time 选定的磁盘驱动器对读写请求提供服务的已用时间所占百分比
Memory Pool Nonpaged Bytes 非分页池中的字节数
Memory Pages/sec 为解析内在对页面的引用而从磁盘读取的页数或写入磁盘的页数
System Total Interrupts/sec 计算机接收并处理硬件中断的速度
Objects Threads 计算机在收集数据时的线程数
Process Private Bytes 专为此进程分配,无法与其它进程共享的当前字节数
2. UNIX资源图
四、Analysis报告
1. Summary Report摘要报告(Excel格式)
2. HTML Report(HTML格式报告)
3. Microsoft Word Report(Word 格式报告)
4. Crystal Report(水晶报表格式报告)