《最新LOADRUNNER初级教程(共39张PPT课件).pptx》由会员分享,可在线阅读,更多相关《最新LOADRUNNER初级教程(共39张PPT课件).pptx(39页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、20081LoadRunner 初级教程第一页,共三十九页。20082第二页,共三十九页。20083 LoadRunner 是 Mercury Interactive的一种(y zhn)预测系统行为和性能的工业级标准性能测试负载测试工具。 通过以模拟上千万用户实施并发负载及实时性能监测的方式来确认和查找问题,LoadRunner 能够对整个企业架构进行测试。通过使用LoadRunner ,企业能最大限度地缩短测试时间,优化性能和加速应用系统的发布周期。此外,LoadRunner 能支持广范的协议和技术,为您的特殊环境提供特殊的解决方案。 第三页,共三十九页。20084 自动性能测试是一项规范,
2、它利用有关产品、人员和过程的信息来减少应用程序、升级程序或修补程序部署中的风险。自动性能测试的核心原理是通过将生产时的工作量应用于预部署系统来衡量系统性能和最终用户体验。构造严密的性能测试可回答如下问题: 应用程序是否能够很快地响应用户的要求? 应用程序是否能处理预期的用户负载并具有盈余能力? 应用程序是否能处理业务所需的事务数量? 在预期和非预期的用户负载下,应用程序是否稳定? 是否能确保用户在真正使用软件时获得积极的体验? 通过回答以上问题,自动性能测试可以量化更改业务指标所产生(chnshng)的影响,并防止系统出现故障和解决可用性问题。 为什么进行自动化性能为什么进行自动化性能(xng
3、nng)(xngnng)测试测试第四页,共三十九页。20085通过Agent进程,监视各种协议的Client与Server端的通讯(tngxn),用LoadRunner的一套C语言函数来录制脚本,所以只要LoadRunner支持的协议,就不会存在捕捉不到的,这是它与Loadtest,WR,Robot(Gui)录制脚本的很大一个区别。WR必须对识别对象,才能录制到。然后它调用这些脚本向服务器端发出请求,接受服务器的返回。至于服务器内部如何处理,它不关心。 一、简介一、简介(jin ji)- -LoadRunnerLoadRunner原理原理第五页,共三十九页。20086LoadRunnerLoa
4、dRunner解决方案解决方案 LoadRunner通过使用虚拟用户Vuser代替实际用户。这些Vuser模拟实际用户的行为来运行实际的应用程序。 因为一台计算机上可以运行许多Vuser,因此LoadRunner减少了对硬件的要求(yoqi)。 LoadRunner Controller可以从一个单一的控制点简单有效地控制所有的 Vuser。 LoadRunner联机监视应用程序的性能。LoadRunner在测试过程中会自动记录应用程序的性能。LoadRunner可检查出现性能延迟的地方:网络或客户端延迟、CPU 性能、I/O 延迟、数据库锁定和数据库服务器上的其他问题。LoadRunner
5、将监视网络和服务器资源以帮助改进性能。 LoadRunnerLoadRunner解决方案解决方案第六页,共三十九页。20087使用LoadRunner进进行测试测试的过过程:v制定负载测试计划v开发(kif)测试脚本v创建运行场景v执行测试v监视场景v分析测试结果第七页,共三十九页。8第八页,共三十九页。2008-4-18北大青鸟(qn nio)商用信息系统有限公司91.确定系统的组成画出系统的组成图。组成图要包括系统中所有的组件,以及相互之间是如何通讯的。下面是一个系统组成图的例子(l zi),可以参考。第九页,共三十九页。102.描述系统配置画出系统组成图后,试着回答以下问题,对组成图进行
6、完善。 预计有多少用户会连到系统 客户机的配置情况(硬件、内存、操作系统、软件工具等) 服务器使用什么类型的数据库以及服务器的配置情况 客户机和服务器之间如何通讯 还有什么组件会影响Response Time 指标(比如Modem 等) 通讯装置(网卡、路由器等)的吞吐量是多少?每个通讯装置能够处理多少并发3.分析最普遍的使用方法了解该系统最常用的功能,确定那些(nxi)功能需要优先测试、什么角色使用该系统以及每个角色会有多少人、每个角色的地理分布情况等,从而预测负载的最高峰出现的情况。第十页,共三十九页。11 根据性能测试(csh)需求写出性能测试(csh)场景第十一页,共三十九页。12 L
7、oadRunnerLoadRunner 包含很多组件,其中最常用的有 Visual User GeneratorVisual User Generator(以下(yxi)简称VuGenVuGen)、ControllerController,AnalysisAnalysis。v Mercury VuGen Mercury VuGen 创建脚本VuGen 通过录制应用程序中典型最终用户执行的操作来生成虚拟用户 (Vuser)。VuGen 将这些操作录制到自动虚拟用户脚本中,以便作为负载测试的基础。v Mercury LoadRunner Controller Mercury LoadRunner
8、Controller 设计和运行场景 Controller 是用来创建、管理和监控负载测试的中央控制台。使用 Controller 可以运行用来模拟真实用户执行操作的脚本,并可以通过让多个 Vuser (虚拟用户)同时执行这些操作来在系统中创建负载。v Mercury Analysis Mercury Analysis 分析场景 Mercury Analysis 提供包含深入的性能分析信息的图表和报告。使用这些图表和报告,可以标识和确定应用程序中的瓶颈,并确定需要对系统进行哪些更改来提高系统性能。第十二页,共三十九页。131.在“Registration Information”界面中,输入序
9、列号(不用(byng)改动,就是 n 个 8) 第十三页,共三十九页。2008-4-18北大青鸟(qn nio)商用信息系统有限公司142.在安装类型界面中,选择一种安装类型 Standalone Installation将要安装 LoadRunner 在一台计算机上Network Installation把 LoadRunner 安装在一个网络驱动器上,这样任何能连接到这个网络驱动器的计算机都可以使用 LoadRunner 的部分或者全部组件(z jin)。Network Installation and shortcuts和 Network Installation 类似,不同的只是这种类
10、型将把自己的计算机配置成 Workstation 来运行 LoadRunner。第十四页,共三十九页。2008-4-18北大青鸟(qn nio)商用信息系统有限公司153.在安装方式界面中,需要选择一种安装方式。建议选择“自定义安装”,这样所有的组件都会一次安装。 Typical Installation安装比较通用的组件,包括 Controller、Vuser、在线(zi xin)帮助和脚本例程。该选项适合于控制 Vusers 的机器。Load Generator只安装运行 Vusers 产生负载的组件。该选项适合于只产生负载,而不控制 Vusers 的机器。MI Listener安装 MI
11、 Listener 组件,用来透过防火墙来运行 Vusers 并且监视性能。Custom Installation自定义安装,我们将使用该选项,安装全部的组件。 第十五页,共三十九页。2008-4-18北大青鸟(qn nio)商用信息系统有限公司164.在“License Information”中输入(shr) License Key 后,Next,继续 100个用户(无时间限制):AEAMAUIK-YAFEKEKJJKEEA-BCJGI10000个用户(有时间限制):AEABEXFR-YTIEKEKJJMFKEKEKWBRAUNQJU-KBYGB 第十六页,共三十九页。2008-4-18北
12、大青鸟(qn nio)商用信息系统有限公司175.安装路径选择(xunz)界面,如果是网络安装,要安装到一个网络驱动器上。提醒:最好把网络提醒:最好把网络驱动器映射成本机的一个盘符(比如驱动器映射成本机的一个盘符(比如 H:盘),安装盘),安装 LoadRunner 的各级目录不要包含的各级目录不要包含中文字符。中文字符。第十七页,共三十九页。186. Next 后进入(jnr)拷贝文件的界面 第十八页,共三十九页。197.拷贝文件完成后, 进入“User Login Settings” 界面。 Allow virtual users to run on this machine withou
13、t user login 需要在下面输入域、用户名和密码(m m), 这样运行Load Generator 的机器会自动登陆到网络.Manual log in to the Load Generator machine 运行Vusers 时, 自动登陆到网络,无需登陆用户名和密码, 这样Vusers 就会不用任何干预自动的启动运行。推荐选择该项。这里选择第一项和第二项都可以。 第十九页,共三十九页。208.重新启动, 安装完成 注意:注意:解压文件存放的文件夹不可起中文名字,安装目录最好(zu ho)使用默认,如果更改则安装目录不要使用中文名!第二十页,共三十九页。21使用使用VuGenVuG
14、en开发脚本开发脚本(jiobn)(jiobn)的步骤:的步骤:录制测试脚本完善测试脚本配置Run-Time Settings项单机运行测试脚本创建运行场景第二十一页,共三十九页。22点击(din j)开始开始-Mercury LoadRunner-Applications-Virtual User -Mercury LoadRunner-Applications-Virtual User GeneratorGenerator或开始开始- Mercury LoadRunner- Mercury LoadRunner-Load Testing- Mercury LoadRunner- Mercu
15、ry LoadRunner-Load Testing-Create/Edit ScriptsCreate/Edit Scripts来启动VuGenVuGen。启动VuGen后,可以选择(xunz)新建单协议脚本,多协议脚本,打开脚本等;如果不想下次再显示该页,在Dont show the startup dialog in the future前打勾即可。第二十二页,共三十九页。23选择选择(xunz)(xunz)协议协议新建一个用户脚本,选择协议,这里(zhl)我们需要测试的是Web应用,所以我们需要选Web(HTTP/HTML)协议,确定后,进入主窗体。第二十三页,共三十九页。24设置设置
16、(shzh)(shzh)录录制选项制选项vApplication typeApplication type中选择应用程序类型Internet Internet ApplicationApplicationvURLURL中输入要测试的网址vWorking directoryWorking directory中设置工作目录vRecord into ActionRecord into Action中选择要把录制的脚本放到哪一个(y )部分,见意选择 ActionActionvVuGen 中的脚本分为三部分:vuser_init、vuser_end 和Action。其中vuser_init 和vuse
17、r_end 都只能存在一个,不能再分割,而Action 还可以分成无数多个部分(通过点击New 按钮,新建ActionXXX)注意:在录制需要登陆的系统时,我们把登陆部分放到 vuser_init 中,把登陆后的操作部分放到 Action 中,把注销关闭登陆部分放到 vuser_end 中。(如果需要在登陆操作设集合点,那么登陆操作也要放到 Action 中,因为 vuser_init 中不能添加集合点)在其他情况下,我们只要把操作部分放到 Action 中即可。在重复执行测试脚本时,vuser_init 和vuser_end 中的内容只会执行一次,重复执行的只是 Action 中的部分。 v
18、“Record the application startup”默认情况下是选中的,说明应用程序一旦启动,VuGen 就会开始录制脚本;如果没有选中,应用程序启动后,VuGen 出现右边的对话框,并且暂时不会开始录制脚本,用户操作应用程序到需要录制的地方,按下“Record”按钮,VuGen 才开始录制。第二十四页,共三十九页。251.点 “ Options ” 按钮 ,进 入 录 制 的 设 置 窗 体, 这 里 一 般 情 况 下 不 需 要 改 动 。设置设置(shzh)(shzh)OptionOption选项选项第二十五页,共三十九页。26vRecording标签页:默认情况下选择“H
19、TML-based Script”,说明脚本中采用HTML 页面的形式来表示,这种方式的 Script 脚本容易维护,容易理解,推荐这种方式录制 选择哪种方式录制,有以下参考原则:1基于浏览器的应用程序推荐使用 HTML-based Script 2不是基于浏览器的应用程序推荐使用 URL-based Script。3如果基于浏览器的应用程序中包含了 JavaScript 并且该脚本向服务器产生了请求,比如(br) DataGrid 的分页按钮等,也要使用 URL-based方式录制4基于浏览器的应用程序中使用了 HTTPS 安全协议,使用 URL-based 方式录制v Advanced 标
20、签页:取默认情况即可。下面的图简单的说明了各项的含义。v Correlation 标签页:这里的内容比较重要,需要定制,主要是为了在录制过程中设置自动关联。根据自己的需求,选择适当的设置,然后点“OK”后, VuGen 开始录制脚本。在录制过程中,不要使用浏览器的在录制过程中,不要使用浏览器的“后退后退”功能,功能,LoadRunner 支持不太好!支持不太好!设置设置(shzh)(shzh)OptionOption选选项项第二十六页,共三十九页。27设置设置(shzh)(shzh)OptionOption选选项项第二十七页,共三十九页。28录制录制(l zh)(l zh)工具条工具条介绍介绍
21、录制过程中,在屏幕(pngm)上会有一个工具条出现。下面我们简单介绍一下各个按钮的功能:录制完成后,按下“结束录制”按钮,VuGen 自动生成用户脚本,退出录制过程。第二十八页,共三十九页。29查看脚本查看脚本录制结束(jish)后,可以通过两种方式来查看脚本:脚本视图及树视图脚本视图脚本视图v脚本视图是一种基于文本的视图,列出了作为 API 函数的 Vuser 操作。要在脚本视图中查看脚本,请单击工具栏上的“View ScriptView Script”按钮或者选择“ViewView” - - “View ScriptView Script”。v在脚本视图中, VuGen 将在编辑器中显示(
22、xinsh)带有彩色编码的函数及其变量值的脚本。树视图树视图v树视图是基于图标的视图,列出了作为步骤的 Vuser 操作。要在树视图中查看脚本,请单击工具栏上的“View TreeView Tree”按钮或者选择“ViewView” - - “ViewView TreeTree”。v对于录制期间所执行的每一步骤, VuGen 都在测试树中生成一个图标和一个标题。在树视图中,将看到作为脚本步骤的用户操作。大多数步骤都附带相应的录制快照。第二十九页,共三十九页。30当录制完一个基本的用户脚本后,在正式使用前我们还需要完善测试脚本,增强脚本的灵活(ln hu)性。例如,可以在脚本中插入名为内容检查的
23、步骤,以验证某些特定内容是否显示在返回页上。可以修改脚本来模拟多用户行为,也可以用事务来 度量特定的业务流程。事务事务(shw) 事务(Transaction):为了衡量服务器的性能,我们需要定义事务。比如:我们在脚本中有一个数据查询操作,为了衡量服务器执行查询操作的性能,我们把这个操作定义为一个事务,这样在运行测试脚本时,LoadRunner 运行到该事务的开始点时,就会开始计时,直到运行到该事务的结束点,计时结束。这个事务的运行时间会在结果中显示。 插入事务操作可以在录制过程中进行,也可以在录制结束后进行。LoadRunner 运行在脚本中插入不限数量的事务。第三十页,共三十九页。31在需
24、要定义(dngy)事务的操作前面事务的“开始点” ,通过菜单或者工具栏插入。插入插入(ch r)事务的方法事务的方法插入事务的开始点后,在需要定义事务的操作后面插入事务的“结束点”。同样可以通过菜单或者工具栏插入。输入事务的名称。注意:事务的名称最好要有意义,能够清楚的说明该事务完成的动作默认情况下,事务的名称列出最近的一个事务名称。一般情况下,事务名称不用修改。事务的状态默认情况下是LR_AUTO。一般情况下,我们也不需要修改。第三十一页,共三十九页。32运行脚本可以通过菜单或者(huzh)工具栏来操作:执行(zhxng)“运行”命令后,VuGen 先编译脚本,检查是否有语法等错误。如果有错
25、误,Vu Gen将会提示错误。双击错误提示,VuGen 能够定位到出现错误的那一行。如果编 译通过,就会开始运行。然后会出现运行结果。第三十二页,共三十九页。33LoadrunnerLoadrunner的场景(chng jng)能够描述在测试活动中发生的各种事件。一个场景包括一个运行虚拟用户活动的Load GeneratorLoad Generator 机器列表,一个测试脚本的列表以及大量的虚拟用户和虚拟用户组。点击开始开始(kish)(kish)-Mercury LoadRunner-Applications-Controller-Mercury LoadRunner-Application
26、s-Controller或开始开始-Mercury LoadRunner- Mercury -Mercury LoadRunner- Mercury LoadRunner-Load Testing-Run Load TestsLoadRunner-Load Testing-Run Load Tests来启动ControllerController程序。在新建场景的窗口,选择一种场景类型:vManual ScenarioManual Scenario:完全手动的设置场景(1 1)vManual Scenario with PercentageManual Scenario with Percen
27、tage ModeMode(1 1.1.1):该项只有在“Manual ScenarioManual Scenario”选中的情况下才能选择。选择该项后,在场景中我们需要定义要使用的虚拟用户的总数,Load Generator machine 机器集,然后我们为每一个脚本分配要运行的虚拟用户的百分比。vGoalOriented ScenarioGoalOriented Scenario(2 2): 在测试计划中,一般都包括性能测试要达到的目标。选择该项后,LoadRunner 基于这个目标,自动为你创建一个场景。在场景中,我们只要定义好我们的目标即可。第三十三页,共三十九页。34 Contro
28、ller 窗口的“设计”选项卡包含两个主要部分:场景(chng jng)计划和场景(chng jng)组v场景计划:场景计划: 在“场景计划”部分中,您可以设置负载行为以精确地描绘用户行为。您还可以确定将负载应用于应用程序的速率、负载测试持续时间以及(yj)如何停止负载。v场景组场景组:您可以在“场景组”部分中配置 VuserVuser 组。在此部分中,您可以创建代表系统典型用户的各种组。您可以定义这些典型用户运行的操作、运行的 Vuser数以及 VuserVuser 运行时所用的计算机。第三十四页,共三十九页。35Controller 窗口中的“运行”选项卡是用来管理和监控测试的控制中心。“
29、运行”视图(sht)包含五个主要部分:场景组,场景状态,可用图树,图查看区域和图例。v场景组:位于左上窗格(chun )中,可以查看场景组中的 Vuser 的状态。使用该窗格(chun )右侧的按钮可以启动、停止和重置场景,查看单个 Vuser 的状态,并且可以手动添加更多的 Vuser,从而增加场景运行期间应用程序上的负载。v场景状态:位于右上窗格中,可以查看负载测试的概要,其中包括正在运行的 Vuser 数以及每个 Vuser 操作的状态。v可用图树:位于中部左侧窗格中,可以查看 LoadRunner 图列表。要打开图,请在该树中选择一个图,然后将其拖动到图查看区域中。v图查看区域:位于中
30、部右侧窗格中,可以自定义显示以查看一至八个图(“View” “View Graphs”)。v图例:位于底部窗格中,可以查看选定图中的数据。第三十五页,共三十九页。36打开 Controller Controller 运行视图。单击“Start ScenarioStart Scenario”按钮 或选择“ScenarioScenario” - “StartStart”开始运行测试。如果您第一次运行该场景, Controller Controller 将启动场景。结果文件自动(zdng)保存到负载生成器的临时目录中。如果要重复此测试,将提示您覆盖现有结果文件。单击“否”,指定新的结果目录。对每个结
31、果集输入唯一且有意义的名称,这是因为在分析图时,可能希望重叠几个场景运行的结果。第三十六页,共三十九页。37 在 Analysis 会话过程中生成的图和报告提供了有关系统性能的重 要信息。使用这些图和报告,可以轻松地标识(biozh)和确定应用程序 中的瓶颈以及提高系统性能所需的改进。从AnalySis中可以得到用户终端的事务响应时间,事务的平均响应时间,网络和服务器的响应时间等。从开始开始-Mercury LoadRunner- -Mercury LoadRunner- Applications- AnalysisApplications- Analysis或开始开始- -Mercury L
32、oadRunner- Mercury Mercury LoadRunner- Mercury LoadRunner- Load Testing-Analyze LoadRunner- Load Testing-Analyze Load TestsLoad Tests来启动Analysis程序。第三十七页,共三十九页。38谢谢!谢谢!第三十八页,共三十九页。内容(nirng)总结2008。在预期和非预期的用户负载下,应用程序是否稳定。双击错误提示,VuGen 能够定位到出现错误的那一行。在场景中,我们只要定义(dngy)好我们的目标即可。四、使用Controller创建场景-Controller设计窗口概述。四、使用Controller创建场景-Controller运行窗口概述。五、使用Analysis分析结果-Analysis窗口概述。谢谢第三十九页,共三十九页。