Loadrunner操作手册v.docx
《Loadrunner操作手册v.docx》由会员分享,可在线阅读,更多相关《Loadrunner操作手册v.docx(47页珍藏版)》请在冰豆网上搜索。
Loadrunner操作手册v
Loadrunner9.5操作手册
文件修改记录
日期
版本号
修订说明
修订人
审核人
批准人
2011-01-13
V0.1
新建
周浩臻
2011-01-17
V0.2
1.增加LoadGenerator负载器设置描述
周浩臻
一.概述3
二.Loadrunner安装与卸载4
1.安装4
1.1.Loadrunner8.14
1.2.Loadrunner9.54
2.卸载5
三.使用Virtualusergenerator录制开发脚本6
1.选择协议6
2.录制测试脚本8
3.开发测试脚本11
3.1.插入事务11
3.2.插入集合点12
3.3.插入注释13
3.4.脚本参数化13
3.5.插入检查点16
4.在Loadrunner脚本中做关联18
4.1.录制脚本时进行自动关联18
4.2.脚本录制后进行自动关联19
4.3.手动关联20
5.试运行脚本20
6.保存脚本21
四.设计测试场景21
1.场景设计22
1.1.场景类型22
1.2.场景策略(ScenarioSchedule)24
1.3.运行模式(RunMode)25
1.4.LoadGenerator负载器设置28
2.控制场景的运行29
2.1.添加资源计数器30
2.2.服务器计数器31
2.2.场景运行36
五.分析执行结果39
1.使用ANALYSIS分析测试结果39
1.1.SummaryReport(摘要报告)40
1.2.Transactions(事务分析)40
1.3.WebResources(网络资源分析)41
1.4.WebPageDiagnostics(网页诊断分析)42
1.5.WindowsResources(系统资源)44
2.使用ANALYSIS技巧44
2.1.设定收集结果信息方式44
2.2.查看图表技巧45
2.3.分析图表技巧45
3.比较分析测试结果47
一.概述
Loadrunner作为专业的性能测试工具,通过模拟成千上万的用户对被测应用进行操作和请求,在实验室环境中精确重现生产环境中任意可能出现的业务压力,然后通过在测试过程中获取的信息和数据来确认和查找软件的性能问题,分析性能瓶颈.
Loadrunner提供了三个大主要模块,这三个模块既可以作为独立的工具分别完成各自的功能,又可以作为Loadrunner的一部分彼此衔接,与其他模块共同完成软件性能的整体测试.这三大模块主要是:
ØVirtualusergenerator--------用于录制脚本
ØMercuryLoadrunnercontroller---------用于创建,运行和监视场景
ØMercuryLoadrunneranalysis--------用于分析测试结果;
使用Loadrunner完成测试一般分为四个步骤:
1)VirtualUserGenerator创建脚本
✧创建脚本,选择协议
✧录制脚本
✧编辑脚本
✧检查修改脚本是否有误
2)中央控制器(Controller)来调度虚拟用户
✧创建Scenario,选择脚本
✧设置机器虚拟用户数
✧设置Schedule
✧如果模拟多机测试,设置IpSpoofer
3)运行脚本
✧分析scenario
4)分析测试结果
二.Loadrunner安装与卸载
1.安装
Loadrunner安装过程比较简单,只需按系统的提示一步一步操作就可以了,这里对安装过程中的一些要点进行简要的说明.
1.1.Loadrunner8.1
版本Loadrunner8.1在安装过程和普通软件的安装一样,先安装英文版,然后运行汉化程序,因为该软件代码非开源式,因此就要破解这个软件。
破解文件有lm70.dll、mlr5lprg.dll。
可将这两个文件复制并粘贴到LR8.1安装目录下的2个bin文件夹下,一般是以下两个路径:
●\Mercury\Loadrunner\bin\;
●\Mercury\Loadrunner\bin\tulip\bin;
操作完毕后,运行LR8.1,打开license管理器,点击添加newlicense,将老license(验证码)复制进去即可。
可用以下两个7.8、8.0通用的license有做参考:
●AEAMAUIK-YAFEKEKJJKEEA-BCJGI
●AEABEXFR-YTIEKEKJJMFKEKEKWBRAUNQJU-KBYGB
1.2.Loadrunner9.5
版本Loadrunner9.5的安装过程类似,只不过在破解时与8.1有点不一致。
其操作方法如下:
1)用LR8.0中的mlr5lprg.dll、lm70.dll覆盖LR9.5安装目录下“bin”文件夹中的对应文件;
2)手动修改注册表,删除下面内容:
●[HKEY_LOCAL_MACHINE\SOFTWARE\MercuryInteractive\Loadrunner\License2]
●[HKEY_LOCAL_MACHINE\SOFTWARE\MercuryInteractive\Loadrunner\License2\History]"AIBGEBFW-JVED-ZKEKEKEKEKEBDNQAF-KBRDN"=""
●[HKEY_LOCAL_MACHINE\SOFTWARE\MercuryInteractive\Loadrunner\License2\PermanentLicense]@="AIBGEBFW-JVED-ZKEKEKEKEKEBDNQAF-KBRDN""last"="AIBGEBFW-JVED-ZKEKEKEKEKEBDNQAF-KBRDN"
●[HKEY_LOCAL_MACHINE\SOFTWARE\MercuryInteractive\Loadrunner\License2\TemporaryLicense]@="AEBGEBFS-AKEKEKEKE-KAUCA"
●[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Interface\{87B3ADD4-21EB-11d5-93EF-00105AA0FD2D}]@="IControl"
3)使用老的注册码
●10000weblicense:
AEABEXFR-YTIEKEKJJMFKEKEKWBRAUNQJU-KBYGB
●65000weblicense:
AEACFSJI-YJKJKJJKEJIJD-BCLBRs
●100webservicelicense:
AEAMAUIK-YAFEKEKJJKEEA-BCJGI
2.卸载
一般通过控制面板即可卸载Loadrunner,但是往往在卸载后重新安装时出现无法安装的问题,这就说明软件并没有完全被卸载。
可按照如下步骤进行完全卸载操作。
1)保证所有Loadrunner的相关进程(包括Controller、VuGen、Analysis和AgentProcess)全部关闭。
2)备份好Loadrunner安装目录下测试脚本,这些脚本一般存放在Loadrunner安装目录下的“script”子目录里。
3)在操作系统控制面板的“删除与添加程序”中运行Loadrunner的卸载程序。
如果弹出提示信息关于共享文件的,都选择全部删除。
4)卸载向导完成后,按照要求重新启动电脑,完成整个Loadrunner卸载过程。
5)删除整个Loadrunner目录。
(包括AgentProcess)
6)在操作中查找下列文件,并且删除它们
●wlrun.*
●vugen.*
7)运行注册表程序(开始-运行-regedit)删除下列键值:
如果只安装了MI公司的Loadrunner这一个产品,请删除:
●HKEY_LOCAL_MACHINE/SOFTWARE/MercuryInteractive
●HKEY_CURRENT_USER/SOFTWARE/MercuryInteractive
否则请删除:
●HKEY_LOCAL_MACHINE/SOFTWARE/MercuryInteractive/Loadrunner
●HKEY_CURRENT_USER/SOFTWARE/MercuryInteractive/Loadrunner
8)最后清空回收站
三.使用Virtualusergenerator录制开发脚本
1.选择协议
在确保测试工具Loadrunner是否正常使用后,进行脚本的录制,具体过程如下:
步骤一:
打开“开始—所有程序—Loadrunner—Loadrunner“出现下图一:
图1
步骤二:
点击【Create/EditScripts】,页面跳转出现下图二,
图2
步骤三:
点击页面上的“NewScript”,如果没有出现上图页面,则可选择“File-New”。
图3
步骤四:
出现这个界面后,选择Loadrunner的脚本协议,首先要从Loadrunner的工作原理上深入理解协议的作用和意义。
Loadrunner启动后,在任务栏上会有一个Loadrunneragentprocess的进程,这个进程的一项重要的工作就是监视各种协议的客户端和服务器端的通信。
只要是能够支持的协议,Loadrunner在录制的过程中就可以通过脚本语言将通信过程录制下来。
所以只要明确了被测软件的通信过程和所使用的协议,Loadrunner才能正确的录制脚本。
对于常见的应用软件,我们可以根据被测应用是B/S结构还是C/S结构来选择协议;
Ø对于B/S结构,可以选择WEB(HTTP/HTTML)协议;
Ø对于C/S结构,可以根据后端数据库的类型来选择,如sybaselib协议用于测试后台数据库为sybase的应用,MSSQLserver协议用于测试后台数据库为SQLserver的应用;
Ø对于没有数据库的windows应用,可以选择windowssockets这个底层的协议;
这里需要说明的是,无论使用哪种协议,Loadrunner的测试流程都基本是一样的,只有在设定细节上有所不同,测试人员只要对被测应用的技术架构熟悉了,就能够成功完成脚本的录制。
假如我们测试的是B/S模式,采用的是web协议。
选择后,点击【确定】按钮。
出现下图:
图4
2.录制测试脚本
步骤一:
在点击界面中的
之前,需要注意一点如果访问的页面已经打开状态,那么先关闭掉。
这个标识开始录制脚本,点这个按钮后,出现下图:
图5
●Programtoanalyze:
这里选择所要用来分析的程序,对于Web协议,这里默认为MicrosoftInternetExplorer
●URLAddress:
这里选择所要录制的网址
●Workingdirectory:
用于保存脚本的工作目录。
系统默认为Loadrunner安装目录下的bin目录,建议修改成专门的工作目录,且保证目录路径为全英文。
●RecordintoAction:
默认所要存放脚本的action,具体包括vuser_init,vuser_end和action,其中vuser_init和vuser_end一般用于存放应用程序初始化的脚本和注销关闭的脚本,在重复执行的时候,这两部分的内容只执行一次.而action部分用于存放实际的操作脚本,这部分脚本可以多次执行,测试人员还可以根据需要创建多个action脚本,但不能创建vuser_init和vuser_end。
同时可以点击“新建”按钮创建多个action,将业务操作分为多个部分,也可以进行重命名。
在测试前可以根据需要将业务分为几个操作部门,建立对应的action,名称最好能清晰描述操作部门的功能。
录制脚本时,可以将对应的操作放在action中。
也可以在录制过程中新建action,这个看个人使用习惯。
●Recordtheapplicationstartup:
选择是否在调用程序的时候即刻开始录制脚本,勾选则在确认时就开始录制脚本,否则在启动程序之后由用户决定何时开始录制脚本。
步骤二:
设置好后,点击【OK】,进行录制,在录制前,如果已经打开待测页面的话,建议关闭该页面。
如果没有勾选选项【Recordtheapplicationstartup】,点击【OK】后会出现如下对话框。
被测程序启动之后,选择【Record】进行开始录制,选择【Abort】则取消录制。
图6
如果勾选了选项“Recordtheapplicationstartup”,点击【OK】后,这时会出现待测页面,同时会出现如下图
图7
这是控制脚本录制的工具栏,是脚本录制过程中测试人员和VUGEN交互的主要平台,每个可用的按钮都可以执行相应的操作。
可根据需要将业务放在一个action中。
点击图中的
选择对应的action。
当页面加载完,我们切换到action,录入要查找的内容。
这时测试的内容已经记录在action事务中。
录制完成后,点击
停止录制。
页面将自动关闭,返回到Loadrunner录制页面,将在页面中自动生成录制脚本代码,保存录制的脚本。
这时跳转的页面如下:
图8
我们可以点击图中的
,来查看刚刚录制生成的代码
图9
3.开发测试脚本
录制后的代码需要进行调试,调试的办法有以下几种:
3.1.插入事务
有时侯测试人员根据项目需要,除了要衡量整个测试脚本的性能外,还想获取到脚本中的某一段和几段操作的性能数据;以便更详细的知道具体的是用户的哪些动作对性能的影响比较大。
Loadrunner采用在脚本中定义事务来达到这一要求。
所谓事务(transaction),就是在脚本定义中定义的某段操作(action),更确切的说,就是一段脚本语句。
定义事务时,首先在脚本中找到事务的开始和结束位置,然后分别插入一个事务起始标记,这样当脚本运行的时候,Loadrunner会自动在事务的起始点计时,脚本在运行到事务结束点时计时结束,系统会自动记录这段操作的运行时间等性能数据;在脚本运行完毕后,系统会在结果信息中单独反映每个事务运行结果。
事务的插入操作可以在脚本运行过程中进行,也可以在脚本录制完毕后进行。
⏹定位事务语句的集合
⏹插入事务起始点语句
将光标放置在欲定义事务的语句集合中第一条语句的上面一行,单击工具栏上的【Insert】按钮,选择【StartTransaction】如下图所示,
图10
将弹出对话框,输入事务名称后,单击OK按钮,系统自动在脚本语句中插入如下语句:
LR_START_TRANSACTION(“事务名称”)
⏹插入事务结束点语句
将光标放置在欲定义事务的语句集合中最后一条语句的后面一行,单击工具栏上的【Insert】按钮,选择【EndTransaction】按钮,输入事务名称后单击OK按钮,系统自动在脚本语句中插入如下语句:
LR_END_TRANSACTION(“事务名称“)
3.2.插入集合点
多用户同时加载并发,并发过程仅仅体现在开始执行的那一刹那,随着服务器对请求的响应时间的不一致或系统环境条件的限制,在运行过程中能集合到一点的可能性微乎其微,所以将一定数量的用户同时加载并不是真正意义上的并发。
系统压力最大的情况是:
所有用户都集中到系统瓶颈的某个点上进行操作,从脚本的角度来讲,这个点就是执行脚本的某一条或一段语句,为了真实模拟这个最坏的情况,查看系统在最坏情况下的反映,Loadrunner提供了集合点的功能,帮助测试人员实现真正意义上的并发。
使用Loadrunner实现集合点功能的方法如下:
⏹在脚本准备访问的语句上面插入一个空白行,并将光标移到该空白行上;
⏹选择【Insert-Rendezvous】命令,系统弹出集合点命名对话框,
⏹输入集合点名称后点击OK按钮.
系统会自动在脚本中插入下面语句
LR_RENDEZVOUS(“集合点名称”);
这样的脚本在运行的时候,就可以在集合点处实现真正的并发了.运行带有集合点的脚本时可以在scenariogroup列表的RENDEZ一栏看到虚拟用户的聚集过程.
需要说明的是,这部分内容仅介绍了如何在Loadrunner的脚本中插入集合点,Loadrunner允许测试人员对集合点的执行过程进行更详细的设定,如聚集的用户数,系统等待时间和等待策略等。
【注】:
1.可以从Controller中,【Scenario】-【Rendezvous】对集合点策略进行设置,如下图所示。
特别要注意的是【TimeoutbetweenVusers】,系统默认为30s,建议可以设置的长一点,以避免超时后无法并发全部用户。
2.集合点策略中可设置每个事务具体的并发数。
如本例所示有多个事务,默认为100%虚拟用户进行并发操作,也可以设置其他的并发数,如有50%虚拟用户并发进行事务一操作,50%虚拟用户并发进行事务二操作。
3.3.插入注释
注释的作用就不多说了,不过插入注释最好是在录制过程中。
具体的操作方法如下:
在需要插入注释的前面,选择【Insert-Comment】命令,在弹出的对话框中输入注释内容即可。
3.4.脚本参数化
让所有用户都使用相同的数据来运行,对系统造成的压力与实际情况会有所不同.而对于那些禁止一个用户多次登陆的系统,也就严重到无法测试的地步了.为了解决这个问题,让系统更加真实的模拟多用户使用的实际环境,Loadrunner提供了对脚本进行参数化输入的功能。
所谓的脚本参数化,就是针对脚本中的某些常量,定义一个或多个包含数据源的参数来取代,让场景中不同的虚拟用户在执行相同的脚本时,分别使用参数数据源中的不同数据代替这些常量,从而达到模拟多用户真实使用系统的目的.
⏹确定需要参数化的常量
打开脚本后,首先要确定哪些常量需要参数化。
⏹准备数据
既然是使用多组数据来替换常量,就需要在使用参数替换常量之前,针对性的准备一些模拟真实情况的数据.Loadrunner允许多种类型的数据源,如DAT的文本文件,电子表格,来自ODBC的数据库数据和其他系统提供的数据源等,每种类型的数据源都要求了不同的格式,这些在Loadrunner的帮助文件中都有详细的说明。
⏹对脚本进行参数化
在脚本中用鼠标选中要参数化的常量,然后单击鼠标右键,在弹出的快捷菜单中选择【ReplacewithaParameter】命令,如图11
图11
系统弹出【SelectorCreateParameter】对话框,通过这个对话框可以选择一个已经存在的参数,还可以根据需要创建一个新的参数。
图12
单击【Properties】按钮,可以在【Parameterproperties】对话框中设定脚本执行时参数的详细替换方式,不同的数据源类型的属性设定对话框的内容也会有所不同。
●注:
参数化输入只能用于函数中的参数,不能用参数代替非函数中的常量参数
●参数名随意取,建议取通俗易懂的名字
图13
在这里我们可以点击【AddColumn】新增多个参数值。
完毕后点击【Close】按钮即可将所选择的字段替换为参数,参数化后的脚本需要进行重新回放验证脚本的正确性。
3.5.插入检查点
Loadrunner检查点的功能主要用来验证某个界面上是否存在指定的TEXT或IMAGE等对象,在使用Loadrunner测试web应用时,可以检查压力较大时WEB服务器能否返回正常的页面。
⏹定位要检查的页面
定位需要检查的页面,最好将脚本视图切换到【Tree】方式,这样就可以直观地查看到Loadrunner录制时获取的每个页面了。
在【Tree】视图中用鼠标单击页面左侧列表中页面对应的URL,就能迅速查看到准备检查的页面和页面上需要检查的图象或文本信息。
⏹插入文字检查点
选择相应的URL,单击鼠标右键,在系统弹出的菜单中选择【在之后插入】或【在之前插入】命令,在URL的脚本前面或后面插入函数,如图14
图14
确认之后,将弹出【AddStep】对话框如图15,在【AddStep】对话框中可以插入很多的函数,如果想为WEB应用插入图像或文本检查点,需要选择【WebChecks】下面的【ImageCheck】或【TextCheck】,
图15
在系统弹出的检查点属性对话框中,输入要查询的文字或图像名称后,系统会自动在【Tree】视图中的树型列表中插入类似的步骤。
Loadrunner还允许对要检查的文字内容和图像名称进行参数化,参数化的过程可以在插入检查点的过程中实现,还可以在插入之后重新打开脚本实现。
要想在插入检查点时就直接实现参数化,只需要在设置被检查对象的名称时单击ABC按钮,创建或选择参数输入就可以了。
⏹设定与检查点有关的选项
系统在执行时是否起用检查点,是由一个系统参数控制的,该参数的设定方法为:
VUSER|【Run-timesettings】|【Preferences】,如果想让检查点起作用,需要选中【EnableImageandtextcheck】复选框。
如图16
图16
⏹查看检查点是否通过
脚本运行结束后,要想查看检查点是否通过,可以在【Tree】视图下,用鼠标右键单击检查点步骤,选择【GotoStepinReplayLog】命令,则系统自动将光标定位到执行日志中获取检查点结果的一行上。
4.在Loadrunner脚本中做关联
4.1.录制脚本时进行自动关联
可以自动找出需要关联的值,并且自动使用关联函数建立关联。
在录制过程中VuGen会根据订定的规则,实时自动找出要关联的值。
4.1.1.启用自动关联
⏹点选VuGen的【Tools】>【RecordingOptions】,弹出【RecordingOptions】对话窗口,选取【HTTPProperties】>【Correlation】,勾选【Enablecorrelationduringrecording】,以启用自动关联。
图17
⏹假如录制的应用系统属于内建关联规则的系统,如AribaBuyer、BlueMartini、BroadVision、InterStage、mySAP、NetDynamics、Oracle、PeopleSoft、Siebel、SilverJRunner等,请勾选相对应的应用系统。
⏹或者也可以针对录制的应用系统加入新的关联规则,此即为使用者自订的关联规则。
⏹设定当VuGen侦测到符合关联规则的数据时,将跳出一个讯息对话窗口,询问您是否要建立关联或者直接自动建立关联
4.1.2.录制脚本
开始录制脚本,在录制过程中,当VuGen侦测到符合关联规则的数据时,会依照设定建立关联。
4.1.3.执行脚本
验证关联是正确无误的。
4.2.脚本录制后进行自动关联
如果没有设置录制过程中进行关联,则在录制脚本之后,可选择【Vuser】-【ScanScriptforCorrelations】进行自动关联。
图17
4.3.手动关联
有可能有些需要做关联的动态数据,连自动关联都无法侦测出来,这时您就需要自行做手动关联了。
5.试运行脚本
脚本录制完毕后,按F5键或单击菜单上