目录分析:
analysis templates--分析模板
bin--可执行程序,注意里面的chm帮助文档
bincerts--安全证书
classes--可能用到的jar包
dat--配置、备份等信息
ejbcomponent--ejb的相关jar包
help--帮助中心
include--头文件(可以编写自定义函数,保存成.h的头文件形式并放在这个目录,以后就只需调用这个头文件就可以方便使用了)
sample--java
tutorial--快速入门的实例
webtours--实例网站
界面分析:
Virtual User Generator
(1)LoadRunner拥有各种Vuser类型,每一类型都适合于特定的负载测试环境。这样就能够使用Vuser精确模拟真实世界的情形。Vuser在方案中执行的操作是用Vuser脚本描述的。
(2)Vuser脚本的结构和内容因Vuser类型的不同而不同。
注意:VuGen仅能录制Windows平台上的会话。但录制的Vuser脚本既可以在Windows平台上运行,也可以在UNIX平台上运行。
新建脚本的方式
(1)新建单协议脚本:创建单协议Vuser脚本。这是创建虚拟用户脚本对话框的默认选项,可以查看所有协议或按类别来查看对应的可用协议。
(2)新建多协议脚本:创建多协议Vuser脚本。VuGen显示所有的可用协议,指定录制所需要的几组协议即可。
(3)使用最近使用过的协议新建脚本:列出最近用于新建Vuser的脚本协议。
协议类型
(1)应用程序部署解决方案:Citrix ICA
(2)客户端/服务器:DB2 CLI、DNS、Informix、MS SQL Server、ODBC、Oracle(2层)、Sybase Ctlib、Sybase Dblib、Windows Sockets协议
(3)自定义:C模板、Visual Basic模板、Java模板、JavaScript、VBScript类型的脚本
(4)分布式组件:适用于COM/DCOM、Corba-Java、Rmi-Java协议
(5)电子商务:FTP、LDAP、Palm、PeopleSoft 8 mulit-lingual、SOAP、Web(HTTP/HTML)、双Web/WinSocket协议
(6)Enterprise Java Bean:EJB测试、Rmi-Java协议
(7)ERP/CRM:Bann、Oracle NCA、PeopleSoft-Tuxedo、SAP-Web、SAPGUI、Siebel-DB2 CLI、Siebel-MSSQL、Siebel-Web、Siebel-Oracle协议
(8)传统:终端仿真(RTE)
(9)邮件服务:Internet邮件访问协议(IMAP)、MS Exchange(MAPI)、POP3、SMTP
(10)中间件:Jacada、Tuxedo(6、7)协议
(11)流数据:Media Player(MMS)、Real协议
(12)无线:i-Mode、VoiceXML、WAP协议
Task模式
Recording Options选项
(以单协议http/html为例)
(1)菜单tools->Recording Options进入录制的设置窗体
(2)Recording标签页:选用哪种录制方式
(3)Brower标签页:浏览器的选择
(4)Recording Proxy标签页:浏览器上的代理设置
(5)Advanced标签页:可以设置录制时的think time,支持的字符集标准等
(6)Correlation标签页:手工设置关联,通过关联可在测试执行过程中保存动态值。使用这些设置可以配置VuGen在录制过程中执行的自动关联的程度
Run-Time Settings选项
(1)Run Logic:用来设置Action部分重复运行几次
(2)Pacing:用来设置以怎样一种方式开始下一次反复
(3)Log:设置是否启用日志
(4)Think Time:关于脚本中think time的设置
(5)Miscellaneous:配置其他运行时设置
(6)Speed Simulation:用来模拟网速
(7)Brower Emualation:设置浏览器仿真属性
(8)Proxy:设置代理
Controller
(1)可以使用LoadRunner Controller来管理和维护方案。
(2)LoadRunner可以从一个单一的控制点简单有效地控制所有的Vuser。
创建运行场景
(1)创建手动的:
①通过创建并指定脚本、负载生成器和每个组中包括的Vuser数,可以生成手动方案。
②也可通过“百分比模式”定义要在方案中使用的Vuser的总数,并为每个脚本分配负载生成器和占总数一定百分比的Vuser。
注意:
①持续时间设置将覆盖Vuser迭代设置。这意味着,如果将持续时间设为五分钟,那么Vuser将继续在五分钟时间内运行尽可能多的迭代,即使运行时设置仅指定一次迭代。
②Vuser组设置不适用于百分比模式。
(2)创建面向目标的:
①在面向目标的方案中,可以定义希望实现的测试目标,LoadRunner将根据定义的目标自动创建一个方案。
②在一个面向目标的方案中,可以定义五种类型的目标:虚拟用户数、每秒点击次数(仅Web Vuser)、每秒事务数、每分钟页面数(仅Web Vuser)或方案的事务响应时间。
③使用“编辑方案目标”对话框可以对方案目标进行定义。
注意:要定义每秒事务数或事务响应时间目标类型,脚本中必须包含事务。对于每种目标类型,可以定义脚本中希望测试的事务。
“方案设置”
(1)在“方案设置”选项卡中,可以设置方案在达到目标后继续运行的时间长度,以及方案无法达到目标时是否继续。
(2)达到目标后再运行:设置方案在到达目标后继续运行的时间长度。
(3)如果无法达到目标:选择下面两个选项中的一个:
①停止方案并保存结果:若无法达到定义的目标,指示Controller停止方案并保存方案结果。
②继续运行方案,无需达到目标:指示Controller继续运行方案,即使无法达到设定的目标。
“运行方案”
(1)运行方案时,会为Vuser组分配负载生成器并执行它们的Vuser脚本。在方案执行期间,LoadRunner将:
①记录在Vuser脚本中定义的事务的持续时间
②执行包括在Vuser脚本中的集合
③收集Vuser生成的错误、警告、通知消息
(2)在方案执行时,可以监视每个Vuser、查看由Vuser生成的错误、警告、通知消息以及停止Vuser组和各个Vuser。可以指示LoadRunner允许单个Vuser或组中的Vuser在停止前完成它们正在运行的迭代、在停止前完成它们正在运行的操作或者立即停止运行。
Results setting
(1)Results--results setting设置
(2)建议results name命名方式为:场景运行时间_脚本名称_虚拟用户数_场景持续时间
监视方案
(1)可以使用LoadRunner联机运行时、事务、Web资源、系统资源、网络延迟、防火墙服务器资源、Web服务器资源、Web应用程序服务器资源、数据库服务器资源、流媒体资源、ERP/CRM服务器资源、Java性能、应用程序部署和中间件性能监视器来监视方案执行。
(2)LoadRunner提供下列联机监视器:“运行时”监视器显示参与方案的Vuser的数目和状态,以及Vuser所生成的错误数量和类型。此外还提供用户定义的数据点图,其中显示Vuser脚本中的用户定义点的实时值。
关于系统资源监视
(1)影响事务响应时间的一个主要因素是系统资源使用率。
(2)使用LoadRunner资源监视器,可以在方案运行期间监视计算机上的Windows、UNIX、SNMP、AntaraFlame Thrower和SiteScope资源,并可以确定特定计算机上为何出现瓶颈。
Analysis基础知识
(1)创建会话:在运行方案时,数据将存储在结果文件中,扩展名为.lrr。Analysis将活动图的显示信息和布局设置存储在扩展名为.lra的文件中。
(2)启动Analysis:LoadRunner选择“Analysis”程序。也可从Controller打开。
(3)整理结果:方案执行之后,这些结果会自动进行整理或合并,即将所有主机的结果传输到结果目录中。通过在Controller窗口中选择Results->Auto collate Results。
了解Analysis报告
(1)运行方案后,可以查看对系统性能进行汇总的报告。Analysis提供以下报告工具:
①摘要报告
②HTML报告
③事务报告
(2)摘要报告提供有关方案运行的一般信息。可以随时从Analysis窗口中查看摘要报告。
(3)可以指示Analysis创建HTML报告。Analysis将为每个打开的图创建HTML报告。
(4)事务报告提供有关Vuser脚本中定义的事务的性能信息。这些报告提供结果的统计信息细分,并允许打印导出数据。
Analysis分析基础
(1)查看summary。主要是虚拟用户数和事务。
(2)查看负载生成器和服务器的系统资源情况。如CPU、内存等。往往内存的泄露表现在CPU利用率过高。
(3)查看虚拟用户和事务。
(4)查看错误发生情况。
(5)查看web资源和细分网页。
IP欺骗
(1)设置方法:
①LoadRunner->tools->ip wizard
②在Controller的scenario中启动IP欺骗(必须在连接到Load generator前启用IP欺骗)
tools->expert mode
tools->options->general
测试结束后要释放IP也是在LoadRunner->tools->ip wizard中操作
注意:
①必须是固定IP,不支持动态IP
②重启计算机后可用ipconfig -all查看IP信息
常用术语:
(1)场景:在lr中主要表现为Controller中设计与执行测试用例中的用户场景。主要工作有:在Controller中选择虚拟用户脚本、设置虚拟用户数量、配置虚拟用户运行时的行为、选择负载发生器、设置执行时间等。
(2)负载发生器:用来产生压力的真实机器,受Controller控制,可以使用用户脚本在不同的主机上执行。在性能测试工作中,通常由一个Controller控制多个load generator以对被测试系统进行加压。
(3)虚拟用户:对应于现实中的真实用户,使用lr模拟的用户称为虚拟用户。其本质是通过虚拟用户脚本来模拟真实用户的行为。
(4)虚拟用户脚本:通过Vuser Generator录制或开发的脚本。这些脚本用来模拟用户的行为。
(5)事务:lr通过事务来衡量服务器的性能。在业务上事务通常是用户的一个或一系列操作,代表一定的功能,而在程序上则表现为一段代码区块。测试人员可以将一个或多个操作步骤定义为一个事务,以便衡量这部分的用户并发响应时间。
(6)思考时间:为了在模拟时更加接近用户的真实行为而引进的概念。在实际中,用户进行一系列操作后往往会进行处理,例如浏览网页内容,而处理过程对服务器是没有压力的。因此在虚拟用户脚本中用函数lr_think_time(double time)来模拟用户处理过程,执行该函数时用户线程会按照相应的time值进行等待。
(7)集合点:对应于真实用户中的并发点。lr通过集合点实现了真正意义的并发。集合点在虚拟用户脚本中对应函数lr_rendezvous(const char* rendezvous_name),当执行到该函数时会按照场景的并发策略来执行。
(8)事务响应时间:事务响应时间是一个统计量,是评价系统性能的重要参数。定义好事务后,在场景执行过程和测试结果分析中即可以看到对应事务的响应时间。通过对关键或核心事务的执行情况进行分析,可以快速定位性能问题。