LoadRunner——安装教程以及创建与录制(一)
1. loadrunner12|loadrunner12官方版下载(附安装教程)+网盘下载+汉化包
CSDN下载及安装教程:
https://blog.csdn.net/weixin_41585557/article/details/85049457
安装完成之后桌面会出现下图中三个图标,安装部分就已经完成
2. loadrunner的主要组成部分
- Virtual User Generator:主要用于录制、开发、调试脚本
- Controller:设置性能测试场景,管理和协调虚拟用户
- Analysis:结果分析工具,生成测试报告
{LR使用前的配置:}
使用LR之前,修改浏览器配置(默认IE)
<1> 工具 -> Internet选项 -> 常规 -> 设置
-> 每次访问此页时检查
原因:当脚本更新时,能够及时适应
<2> 工具 -> Internet选项 -> 程序 -> 重置Web设置
原因:恢复录制时自动打开的浏览器为IE
<3> 工具 -> Internet选项 -> 高级
-> 去除 启用第三方浏览器扩展
原因:避免录制时的干扰
{测试原理}
就是使用loadrunner来模拟多个用户按照已设定的行为同时访问web站点。
其中已设定的行为就是测试用例,是借助虚拟用户生成器来录制脚本完成的,
多个用户同时访问的策略是在控制台中设定场景来完成的。
{测试思路}
分两步:
第一步 录制脚本
先录制用户请求访问的行为,如用户访问首页,或用户先登陆,后浏览页面,后搜索;录制完后会生成用户请求行为的脚本;然后我们按需要修改脚本,使脚本更符合实际请求情况;
第二步 运行场景
在第一步中录制了单个用户请求流程的脚本,第二步主要是设置用户按照脚本同时访问的并发数以及并发访问的时间和策略,使其更接近真实高并发访问的场景;在模拟并发访问后,会形成测试报告,包括服务器数据流吞吐量、每秒请求次数、事务响应时间等。
{操作步骤}
主要分为以下5个步骤
1设置录制选项
2录制脚本
3脚本优化
4设置场景
5运行场景及查看报告
具体配置如下图所示,其中有些配置步骤可以用loadrunner默认的,不是必须项。
{步骤详解}
0 启动第一个组件 : 虚拟用户脚本生成器( VuGen )
开始 菜单 ->所有程序->HPLoadRunner->Applications->Virtual User Generator
P s:不要生成快捷方式
1. 设置录制选项
1.1 在 首页中的创建脚本 , ( 脚本都要从创建新的开始,不支持补录 )
1.2选择协议
在新建虚拟用户窗口中,选择web(HTTP/HTML),点击创建:
1.3输入 被测 系统 的 url,设置录制选项
【要录制的程序】:打开url的浏览器,默认为IE,也可以改为其他浏览器
【URL地址】:需要进行测试的网址
【录制到操作】:初始化
录制的脚本分为三部分:(vuser_init 初始化 Action 核心业务 vuser_end 结束)
一般将登录操作录制到vuser_init中; 仅执行1次
将核心业务(如购票、查询线路)录到Action; 可执行n次
原因:Action功能强大,具备其它部分没有的功能,比如:参与迭代、设置并发等
将退出系统操作录制到vuser_end中; 仅执行1次
{三部分的顺序:先初始化init-再action-最后end}
2录制脚本
2.1录制脚本
设置完点击"确定"后,会自动打开浏览器并定位到配置的url地址中。然后需要在浏览器中模拟用户的行为。{按照用例去录制}
在模拟用户行为完后,点击蓝色按钮停止录制,自动会生成脚本。
{录制脚本前需要先手动跑一遍}
【练习1】
在webtours中录制登录-购票并回放购票完整脚本: |
---|
2.2 编译并 回放脚本
【编译脚本】compile,在生成脚本后,点击编译脚本,如无语法报错,可以回放脚本。
【回放脚本】replay,模拟单用户,根据生成的脚本在浏览器中回放用户的行为,来验证是否符合要求。
【运行结果】result,查看结果以及回放脚本时,显示回放画面。
【保存文件】
新建三个子目录:
1)script 存放脚本文件
2)scenario 存放控制台的场景文件
3)result 存放结果分析文件
【脚本组成】
脚本语法:类C语法,C语言语法 + LoadRunner语法
1)vuser_init.c 初始化脚本 仅执行1次
vuser_init(){return 0;}
2)Action.c 核心脚本 可执行n次 默认1次
Action(){return 0;}
3)vuser_end.c 结束脚本 仅执行1次
vuser_end(){return 0;}
4)globals.h 头文件 包含LR函数的声明
【脚本分析】
{每个脚本中包含了大量的LR函数}
LR函数一般以lr_或web_开头
函数1: 调用web_url函数,向服务器发送一个请求
web_url("WebTours", //步骤名
"URL=http://localhost:1080/WebTours/", //请求地址
"Resource=0",
"RecContentType=text/html",
"Referer=",
"Snapshot=t1.inf", //快照名t1.inf 唯一的
"Mode=HTML",
LAST); //参数最后 LAST结尾
函数2: 事务的开始和结束, Transaction 事务
lr_start_transaction("login");
中间:具体业务流程,一般都是请求
lr_end_transaction("login",LR_AUTO);
添加事务的作用:
计算某个重要的业务操作的响应时间,并作为性能分析的重要指标:平均事务响应时间。
函数3: 向服务器以提交表单的形式发送请求
web_submit_form("login.pl", //步骤名
"Snapshot=t2.inf", //快照名 t2.inf
ITEMDATA, //分隔词 后续是表单提交的参数和数据
"Name=username", "Value=jojo", ENDITEM,
"Name=password", "Value=bean", ENDITEM,
"Name=login.x", "Value=29", ENDITEM,
"Name=login.y", "Value=12", ENDITEM,
LAST);
函数4: 思考时间 单位:秒 等待时间、步骤之间的间隔时间lr_think_time(16);
函数5: 设置集合点,并发测试,多用户集合瞬间产生压力lr_rendezvous("buy");
函数6: 设置检查点,检验预期结果与实际结果是否一致web_reg_find("Text=Welcome, jojo, to the Web Tours reservation pages.", //预期结果LAST);图形操作:小望远镜图标按钮