文章目录
- LoadRunner
- 一、LoadRunner的基本概念
- 功能:
- 原理:
- 组成:
- 二、开发测试脚本
- 1.VUG录制脚本
- 1.WebTours系统
- WebTours的配置:
- 成功访问后进行注册
- 2.脚本录制
- 3.运行(回放)
- 2.脚本加强
- 1.插入事务
- 插入函数:
- 注意事项
- 2.插入集合点
- 3.插入检测点
- 4.参数化输入
- 5.打印日志
- 3.Controller设计测试场景
- 设计场景
- 运行场景
- 4.Analysis产生测试报告
- 汇总报告
LoadRunner
滚滚镇楼~
- 使用LoadRunner录制脚本和编写脚本
一、LoadRunner的基本概念
- LoadRunner通过以模拟上千万用户实施并发负载及实时性能监测的方式来确认和查找问题,优化性能和加速应用系统的发布周期。
功能:
- LoadRunner是一种适用于许多软件体系架构的自动负载测试工具,从用户关注的响应时间、吞吐量, 并发用户和性能计数器等方面来衡量系统的性能表现,辅助用户进行系统性能的优化
原理:
- 启动以后,在任务栏会有一个Agent进程,通过Agent进程,监视各种协议的Client与Server端的 通讯,用LR的一套C语言函数来录制脚本,所以只要LR支持的协议,就不会存在录制不到的,然后LR调用这些 脚本向服务器端发出请求,接受服务器的响应。至于服务器内部如何处理,它不关心。
组成:
- LoadRunner主要包括三个前台功能组件,分别为VuGen(虚拟用户脚本生成器)、Controller(测试控制器)和Analysis(结果分析器)。
- 系统会自动调用后台功能组件 LG(负载生成器)和 Proxy(用户代理)来完成性能测试工作。
- VuGen 是录制、编写脚本。通过录制或编写脚本来模拟用户的行为。
- Controller 设计场景,运行场景。是执行负载测试管理和监控的中心。在这里指定具体的性能测试方案,执行性能测试,收集测试数据,监控测试指标。监控工具将测试过程中收集到的客户机、服务器和网络性能指标数据显示在监控页面上,便于测试人员对系统表现进行随时掌握。
- LG是模拟多用户并发访问被测试系统的组件。模拟多用户访问系统的前提是已经具备了虚拟用户脚本,VuGen 是录制和编辑虚拟用户脚本的工具,录制好的脚本是不同语言表达的文本文件,在LG执行时被解析和执行。脚本录制和回放过程是在Proxy支持下完成的。
- Analysis 产出性能测试报告。在测试完成后,对测试过程中收集到的各种性能数据进行计算、汇总和处理,生成各种图表和报告,为系统性能测试结果分析提供支持。
二、开发测试脚本
1.VUG录制脚本
- 使用LoadRunner自带的WebTours系统进行录制
1.WebTours系统
-
LoadRunner/WebTours/StartServer.bat 双击StartServer.bat进行启动
WebTours的配置:
LoadRunner/ WebTours/ conf / httpd.conf 找到端口号为1080
成功访问后进行注册
在 cbi-bin/users路径下,存放着之前注册的用户和密码
2.脚本录制
- 使用VUG进行脚本录制
打开VUG
创建新脚本
Actions中保存的就是录制的脚本:
vuser_init:初始化(从始至终只运行一次)
Action:存放录制好的脚本:(编写代码)默认运行一次,也可以运行多次。在初始化之后运行
vuser_end:程序退出时执行,运行时机是action运行完成之后执行。
Runtime Settings: 设置脚本运行的参数
Parameters: 参数化时会用到
- 点击红点,开始录制
- 如果无法录制成功,可以用Fiddler来录制:
- 参考文章: https://blog.csdn.net/2401_83387413/article/details/138130301
3.运行(回放)
2.脚本加强
1.插入事务
插入函数:
点击,开始的事务
输入事务名
生成了这一行代码,这就是开始事务对应的函数。
插入同理结束事务的函数
注意事项
事务必须有开始、有结束
开始的事务和结束的事务之间的事务名称必须一致
2.插入集合点
函数:lr_rendezvous
在LoadRunner中为了达到并发这样的机制,引入了集合(让所有的用户同时发起请求)
插入集合点函数
3.插入检测点
函数:web_reg_find
- 是注册类函数,需要在请求之前进行检查点的插入
4.参数化输入
右键点击变量,进行创建
点击ok之后,下一个no
双击Parameters
进行数据的插入
在Runtime Settings中 更改日志Log ,并且调整运行的次数
外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传
- 参数化设置完后,需要更改日志
5.打印日志
函数:lr_log_message
函数:lr_output_message
//如果当前登录的用户是weng,输出字符串:weng hello
if(strcmp("weng",lr_eval_string("{username}"))==0 ){
lr_output_message("hello %s",lr_eval_string("{username}"));
}
3.Controller设计测试场景
设计场景
1.通过VUG打开
设计场景:
运行场景
状态区域
操作区域和数据展示
监控指标区域
图表区域
4.Analysis产生测试报告
汇总报告
图表
点击移步博客主页,欢迎光临~