收藏 分销(赏)

LoadRunner培训.ppt

上传人:精*** 文档编号:12884213 上传时间:2025-12-23 格式:PPT 页数:75 大小:1.12MB 下载积分:16 金币
下载 相关 举报
LoadRunner培训.ppt_第1页
第1页 / 共75页
LoadRunner培训.ppt_第2页
第2页 / 共75页


点击查看更多>>
资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,单击此处编辑母版标题样式,单击此处编辑母版文本样式,二级,三级,四级,五级,*,LoadRunner,性能测试培训,学习目标,学习目标,性能测试是什么,性能测试的类型,Load Runner,基础,性能测试的范畴,性能指标介绍,性能测试过程,性能调优介绍,性能测试是什么?,定义,性能测试是通过自动化的测试工具模拟多种正常、峰值以及异常负载条件来对系统的各项性能指标进行测试。,负载测试,和,压力测试,都属于性能测试,两者可以结合进行。通过负载测试,确定在各种工作负载下系统的性能,目标是测试当负载逐渐增加时,系统各项性能指标的变化情况。压力测试是通过确定一个系统的瓶颈或者不能接收的性能点,来获得系统能提供的最大服务级别的测试。,在线用户数,在线用户数是指同时登录应用系统的用户数量。,该数据可通过检查系统应用与数据库连接取得。,对于已投产系统,该数量一般通过系统跟踪监控获取。,新投产系统通过经验值估算。,性能测试是什么?,并发用户数,并发主要是针对服务器而言,是否并发的关键是看用户操作是否对服务器产生了影响。因此,并发用户数量的正确理解为:在同一时刻与服务器进行了交互的在线用户数量,这种交互既可以是单向的传输数据,也可以是双向的传送数据。,并发用户数是指系统运行期间同一时刻进行业务操作的用户数量。,该数量取决于用户操作习惯、业务操作间隔和单笔交易的响应时间。,使用频率较低的应用系统并发用户数一般为在线用户数的,5%,左右。,使用频率较高的应用系统并发用户数一般为主线用户数的,10%,左右。,交易,交易分为业务层面和技术层面两种定义。,业务层面交易是指完成一次完整的业务操作,如进行一次查询、转账。,技术层面交易是指进行一次应用程序至应用程序、或者应用程序至数据库的系统操作。,一般的一笔业务交易由多笔技术交易组成。根据业务交易的复杂度和系统应用架构的不同,其比例大致为,1,:,2-1,:,10,性能测试类型,负载测试,压力测试,疲劳强度测试,大数据量测试,性能测试类型,负载测试,(Load Test),通过逐步增加系统负载,测试系统性能的变化,并最终确定在,满足性能指标的情况下,,系统所能承受的最大负载量的测试。,压力测试,(Stress Test),通过逐步增加系统负载,测试系统性能的变化,并最终确定在什么负载条件下系统性能,处于失效状态,,并以此来获得系统能够提供的最大服务级别的测试。,压力测试是一种特定类型的负载测试。,性能测试类型,疲劳强度测试,通常是采用系统稳定运行情况下能够支持的最大并发用户数或者日常运行用户数,持续执行一段时间业务,通过综合分析交易执行指标和资源监控指标来确定系统处理最大工作量强度性能的过程。,疲劳强度测试可以反映出系统的性能问题,例如内存泄漏等。,大容量测试,(Volume Test),对特定存储、传输、统计、查询业务的测试。,LoadRunner,基础,LoadRunner,常用的版本有哪些?,V7.8 V8.0 V8.1 V9.0 V9.1 V9.5 V11,LoadRunner,是那个公司的产品?,Mecury,公司,现为,HP,收购 世界,500,强的企业中,有,75%,的企业使用其产品,Test Director 9.0,版本称为,QC,(,Mercury Quality Center,),Win Runner,Load Runner,Quick Test Professional,(,QTP,),Loadrunner,支持哪些常用的插件?,.net,和,JBuilder,两种插件,Loadrunner,常用的开发语言是什么?,C,LoadRunner,基础,Loadrunner,常用组件,Virtual User Generator,(,Vugen,),创建脚本,Controller,设计和运行场景,Analysis,分析场景,Tuning Console,(,LoadRunner8.0,以上),调优,LoadRunner,基础,Loadrunner,支持哪些常用协议?,Web(HTTP/HTML),Sockets,.net,协议,web services,常用数据库协议(,ODBC,,,ORACLE,,,SQLSERVER,等),邮件,(SMTP,、,pop3),其它协议,思考问题,:,为什么,LR,录完之后,VuGen,里产生不了脚本?,B/S,结构的一定选择,WEB(HTTP/HTML),?,C/S,结构的一定是,WinSocket,协议?,JAVA,开发的,C/S,选择什么 协议,,C,开发的,B/S,如何选择协议?,LoadRunner,协议选择,如何选择协议?,很多人使用,loadrunner,录制脚本时都得不到理想的结果,出现这种情况大多是由于录制脚本时选择了不当的协议。那我们在录制脚本前如何选择合适的通信协议呢?用单协议还是双协议?,LoadRunner,属于应用在客户端的测试工具,在客户端模拟大量并发用户去访问服务器,从而达到给服务器施加压力的目的。所以说,LoadRunner,模拟的就是客户端,其脚本代表的是客户端用户所进行的业务操作,即只要脚本能表示用户的业务操作就可以。,1.LR,支持多种协议,请大家一定要注意,这个地方协议指的是你的,Client,端通过什么协议访问的,Server,,,Client,一般是面向最终使用者的,,Server,是第一层,Server,端,因为现在的体系架构中经常,Server,层也分多个层次,什么应用层,什么数据层等等,,LR,只管,Client,如何访问第一层,Server.,2.,特别要注意某些应用,例如一个,Web,系统,这个系统是通过,ActiveX,控件来访问后台的,,IE,只是一个容器,而,ActiveX,控件访问后台是通过,COM/DCOM,协议的,这种情况就不能使用,Web,协议,否则你什么也录制不到,所以,,LR,工程师一定要了解应用程序的架构和使用的,技术,。,3.,象,HTTPS,,一般来讲一定要选择多协议,但在选择具体协议的时候一定只选,Web,协议,这时候才能作那个端口映射。,LoadRunner,协议选择,通常协议选择,1.,对于常见的,B/S,系统,选择,Web(Http/Html),2.,测一个,C/S,系统,根据,C/S,结构所用到的后台数据库来选择不同的协议,如果后台数据库是,sybase,,则采用,sybaseCTlib,协议,如果是,SQL server,则使用,MS SQL server,的协议,至于,oracle,数据库系统,当然就使用,Oracle 2-tier,协议。,3.,对于没有数据库的,C/S,()这些可以选择,Windwos Sockets,协议。,4.,至于其他的,ERP,,,EJB,(需要,ejbdetector.jar,),选择相应的协议即可,.,5.,一般可以使用,Java vuser,协议录制由,java,编写的,C/S,模式的软件,当其他协议都没有用时,只能使用,winsocket,协议,LoadRunner,基础,设置,Recording Options,选项,?(以单协议,http/html,为例),菜单,tools-Recording Options,进入录制的设置窗体,Recording,标签页,:,选用哪种录制方式,Browser,标签页:浏览器的选择,Recording Proxy,标签页:浏览器上的代理设置,Advanced,标签页:可以设置录制时的,think time,,支持的字符集标准等,Correlation,标签页:手工设置关联,通过关联可在测试执行过程中保存动态值。使用这些设置可以配置,VuGen,在录制过程中执行的自动关联的程度。,LoadRunner,基础,HTML-Based scrpt,和,URL-Based scrpt,录制的区别,?,基于浏览器的应用程序推荐使用,HTML-Based scrpt,。,不是基于浏览器的应用程序推荐使用,URL-Based scrpt,。,如果基于浏览器的应用程序中包含了,Java scrpt,并且该脚本 向服务器产生了请求,比如,DataGrid,的分页按钮等,也要使用,URL-Based scrpt,方式录制。,基于浏览器的应用程序中使用了,HTTPS,安全协议,使用,URL-Based scrpt,方式录制。,录制过程中不要使用浏览器的,“,后退,”,功能,,LoadRunner,对其支持不太好。,LoadRunner,基础,创建脚本操作步骤:,启动,VuGen:,选择需要新建的协议脚本,可以创建单协议,或是多协议脚本,点击,Start Record,按钮,输入程序地址,开始进行录制,使用,VuGen,进行录制:创建的每个,Vuser,脚本都至少包含三部分:,vuser_init,、一个或多个,Actions,及,vuser_end,。录制期间,可以选择脚本中,VuGen,要插入已录制函数的部分。运行多次迭代的,Vuser,脚本时,只有脚本的,Actions,部分重复,而,vuser_init,和,vuser_end,部分将不重复,LoadRunner,基础,完善脚本,插入事务,插入集合点,模拟用户思考时间,参数化输入,插入,Text/Imag,检查点,Run-Time Setting,选项,LoadRunner,基础,插入事务,(Transaction),事务为衡量服务器的性能,需要定义事务。,LoadRunner,运行到该事务的开始点时,,LR,就会开始计时,直到运行到该事务的结束点,这个事务的运行时间在结果中会有反映。,插入事务操作可以在录制过程中进行,也可以在录制结束后进行。,LR,运行在脚本中插入不限数量的事务。,在菜单中单击,Insert,Start Transaction,后,输入事务名称,也可在录制过程中进行,,在需要定义事务的操作后面插入事务的,“,结束点,”,。默认情况下,事务的名称列出最近的一个事务名称。一般情况下,事务名称不用修改。事务的状态默认情况下是,LR_AUTO,。一般情况下,我们也不需要修改状态的,LoadRunner,基础,插入集合点,(,Rendezvous,),集合点:如果脚本中设置集合点,可以达到绝对的并发,但是集合点并不是并发用户的代名词,设置结合点和不设置结合点,需要看你站在什么角度上来看待并发,是整个服务器,还是提供服务的一个事务;,插入集合点是为了衡量在加重负载的情况下服务器的性能情况。,在测试计划中,可能会要求系统能够承受,1000,人甚至更多同时提交数据,在,LR,中可以通过在提交数据操作前面加入集合点,当虚拟用户运行到提交数据的集合点时,,LR,就会检查同时有多少用户运行到集合点,从而达到测试计划中的需求。,具体的操作方法如下:在需要插入集合点的前面,点击菜单,Insert,Rendezvous,,也可在录制时按插入集合点按钮,注意:集合点经常和事务结合起来使用。集合点只能插入到,Action,部分,,vuser_init,和,vuser_end,中不能插入集合点。,LoadRunner,基础,模拟用户思考时间,用户在执行两个连续操作期间等待的时间称为,“,思考时间,”,。,Vuser,使用,lr_think_time,函数模拟用户思考时间。录制,Vuser,脚本时,,VuGen,将录制实际的思考时间并将相应的,lr_think_time,语句插入到,Vuser,脚本。,可以编辑已录制的,lr_think_time,语句,也可在 脚本中手动添加更多,lr_think_time,语句。,以秒为单位指定所需的思考时间,LoadRunner,基础,参数化,如果用户在录制脚本过程中,填写提交了一些数据,这些操作都被记录到了脚本中。当多个虚拟用户运行脚本时,都会提交相同的记录,这样不符合实际的运行情况,而且有可能引起冲突。为了真实的模拟实际环境,需要各种各样的输入。,录制业务流程时,,VuGen,生成一个包含可以用参数替换已录制的值。这被称为脚本参数化。,参数化包含以下两项任务:,在脚本中用参数取代常量值。,设置参数的属性以及数据源。,注意:,不是所有的函数都可以参数化的。也可以将参数化的内容进行还原,LoadRunner,基础,创建参数化,选中需要参数化的内容,点击右键,选择,Replace with a parameter,在,“,参数名,”,框中键入参数的名称,或从列表中选择一个现有的参数名。,在从,“,参数类型,”,列表中选择参数类型。,点击属性,设置参数属性,也可以点击菜单,:VuserParameter List,,进行添加参数,设置相应的属性,LoadRunner,基础,参数的类型介绍,数据文件,:,文件(现有文件或者用,VuGen,或,MS Query,创建的文件)中包含的数据,分配内部数据,:Vuser,内部生成的数据。这包括日期,/,时间、组名、迭代编号、负载生成器名、随机编号、唯一编号和,Vuser ID,用户定义的函数,:,使用外部,DLL,函数生成的数据,LoadRunner,基础,参数化设置属性界面,LoadRunner,基础,参数属性设置,定义选取列:表示指定选取哪一列的值,定义,“,列分隔符,:,用来分隔表格中的列的字符,选取下一个值的方式:表示在,Vuser,脚本执行期间如何选择表格数据。选项包括:,“,顺序,”,、,“,随机,”,和,“,唯一,”,。,从,“,更新值的时间,”,列表中选择更新选项。选项包括,“,每次迭代,”,、,“,每次出现,”,和,“,一次,”,。,参数选项说明,1.,参数更新方法:,每次出现:指示,Vuser,在每次参数出现时使用新值。当使用同一个参数的几个语句不相关时,该方法非常有用。例如,对于随机数据,在该参数每次出现时都使用新值可能是非常有用的。每次迭代:指示,Vuser,为每次脚本迭代使用新值。如果一个参数在脚本中出现了若干次,则,Vuser,为整个迭代中所有出现的该参数使用同一个值。当使用同一个参数的几个语句相对时,该方法非常有用。一次:指示,Vuser,在方案运行期间仅对参数值更新一次。,Vuser,为所有出现的该参数和所有迭代使用同一个参数值。当使用日期和时间时,该类型可能会非常有用。,参数选项说明,2.“,文件”类型参数选择分配方法顺序:,顺序地向,Vuser,分配参数值。当正在运行的,Vuser,访问数据表格时,它将会提取下一个可用的数据行。如果在“更新 值的时间”列表框中指定了“每次迭代”,则,Vuser,将为每一次迭代从数据表格中提取下一个值。如果在“更新值的时间”列表框中指定了“每次出现”,则,Vuser,将为每一次参数的出现从数据表格中提取下一个值,即使它在同一次迭代中。如果在“更新值的时间”列表框中指定了“一次”,则第一次迭代中分配的值就会在每个,Vuser,接下来所有的迭代中使用。随机:当测试开始运行时,“随机”方法为每个,Vuser,分配一个数据表格中的随机值。如果在“更新值的时间”列表框中指定了“每次迭代”,则,Vuser,将会为每一次迭代从数据表格中提取一个新的随机值。如果在“更新值的时间”列表框中指定了“每次出现”,则,Vuser,将为每一次参数的出现从数据表格中提取一个新的随机值,即使它在同一次迭代中。如果在“更新值的时间”列表框中指定了“一次”,则第一次迭代中分配的随机值就会在该,Vuser,的所有迭代中使用。唯一:为每一个,Vuser,的参数分配一个唯一的属性值。如果在“更新值的时间”列表框中指定了“每次迭代”,则,Vuser,将为每一次迭代从数据表格中提取下一个唯一值。如果在“更新值的时间”列表框中指定了“每次出现”,则,Vuser,将会为每一次参数的出现从数据表格中提取一个新的唯一的值,即使它在同一次迭代中。如果在“更新值的时间”列表框中指定了“一次”,则第一次迭代中分配的唯一值就会在每个,Vuser,的所有接下来的迭代中使用。,LoadRunner,基础,从现有数据库中导入数据,通过,LoadRunner,,可以从数据库中导入数据以用于参数化。您可以用下列两种方法中的一种导入数据:,新建查询,指定,SQL,语句,VuGen,提供一个指导您完成从数据库中导入数据的过程的向导。在该向导中,您可以指定如何导入数据(通过,MS Query,新建查询或者指定,SQL,语句)。,导入数据之后,它被另存为一个扩展名为,.dat,的文件,并且存储为常规参数文件。,LoadRunner,基础,插入,Text/Image,检查点,在进行压力测试时,为了检查,Web,服务器返回的网页是否正确,这些检查点验证网页上是否存在指定的,Text,或者,Image,,还可以测试在比较大的压力测试环境中,被测的网站功能是否保持正确。,操作步骤,:,1,、可以将视图切换到,TreeView,视图,2,、在树形菜单中选择需要插入检查点的一项,然后点鼠标右键,选择将检查点插到该操作执行前,(Insert Before),还是执行后,(Insert After),。,3,、在弹出对话框中选择,web Checks,下面的,Image Check,或是,Text Check,4,、对需要检查点设置相关的属性,LoadRunner,基础,Controller,可以使用,LoadRunner Controller,来管理和维护方案。,LoadRunner,使您可以从一个单一的控制点简单有效地控制所有的,Vuser,。,LoadRunner,基础,创建运行场景,使用集合点,运行方案,监视方案,LoadRunner,基础,Controller,窗体介绍,Controller,窗口包含两个选项卡,选择,“,视图,”,“,显示输出,”,则,Controller,将打开,“,输出,”,窗口,会显示方案执行期间生成的错误、警告、通知、调试和批处理消息。,设计视图该视图显示方案中的所有,Vuser,组,/,脚本的列表、负载生成器计算机以及分配给每个组,/,脚本的,Vuser,数。还显示有关方案计划或目标方案)的基本信息。,运行视图显示有关运行的,Vuser,和,Vuser,组的信息以及联机监视器图。,LoadRunner,基础,创建运行场景,创建手动方案,创建面向目标的方案,LoadRunner,基础,计划方案,计划定义,按方案计划:定义整个方案的设置。,“,加压,”,选项卡、,“,持续时间,”,选项卡、,“,减压,”,选项卡。,按组计划:定义各个组的设置。从左侧的框中,选择 要计划的,Vuser,组。,“,开始时间,”,选项卡、,“,加压,”,选项卡、,“,持续时间,”,选项卡、,“,减压,”,选项卡。,注意:,Vuser,组设置不适用于百分比模式。,LoadRunner,基础,创建手动方案,通过创建并指定脚本、负载生成器和每个组中包括的,Vuser,数,可以生成手动方案。也可通过,“,百分比模式,”,定义要在方案中使用的,Vuser,的总数,并为每个脚本分配负载生成器和占总数一定百分比的,Vuser,。,运行场景描述在测试活动中发生的各种事件。一个运行场景包括一个运行虚拟用户活动的,Load Generator,机器列表,一个测试脚本的列表以及大量的虚拟用户和虚拟用户组。可以选择下列两种方法之一来创建方案:,“,手动方案,”,或,“,面向目标的方案,”,。在面向目标的方案中,可以定义通过测试要实现的目标,,LoadRunner,将根据这些目标自动生成方案。,LoadRunner,基础,“,加压,”,选项卡,点击,Edit Schedule,按钮,即可进入,Schedule,设置窗口。,点击,New,新增一个方案名称要确定方案开始的方式,请单击,“,加压,”,选项卡。选择下列选项之一:,同时加载所有的,vuser,:同时启动方案中的所有,Vuser,。,启动,xx,个,vuser,,每,x,(时,W,分,W,秒):同时开始运行指定数目的,Vuser,,并在两次,Vuser,加压之间等待指定的时间。,LoadRunner,基础,“,持续时间,”,选项卡,要设置方案的持续时间,请单击,“,持续时间,”,选项卡。,运行直到完成,在加压完成之后运行,x,(时,W,分,W,秒):所有,Vuser,都已加压之后,再运行方案约一段指定的时间。,无限期运行,注意:,持续时间设置将覆盖,Vuser,迭代设置。这意味着,如果将持续时间设为五分钟,那么,Vuser,将继续在五分钟时间内运行尽可能多的迭代,即使运行时设置仅指定一次迭代。,LoadRunner,基础,“,减压,”,选项卡,要确定方案停止的方式,请单击,“,减压,”,选项卡。,同时停止所有的,Vuser,:同时停止方案中的所有,Vuser,。,停止,x,个,Vuser,,每,x,(时,W,分,W,秒):在指定的时间段内停止一定数目的,Vuser,。,LoadRunner,基础,设置延迟方案开始时间,对于手动和面向目标的方案,您都可以指示,LoadRunner,在稍后的某个时间点开始运行方案。您可以指定让,LoadRunner,自发出,Run,命令以来等待的分钟数,也可以指定让方案开始的特定时间。,点击,Secnaion Stat Time,按钮,进入,Scenario Start Time,窗口,LoadRunner,基础,选择,“,按组计划,”,选项,创建,Vuser,组后,您可以通过设置以下内容,计划该组的脚本执行:,方案开始后,该组开始运行之前,它必须等待的时间量,在指定时间段内运行的,Vuser,的数量,在指定时间段内将停止的,Vuser,的数量,该组运行的时间量,注意:,Vuser,组设置不适用于百分比模式,。,LoadRunner,基础,“,开始时间,”,选项卡,选择下列三个选项之一:,在方案开始时启动组,在方案开始后,x,时启动:运行该组之前等待指定的时间量。,组,x,完成时启动:指定的组结束运行后开始运行该组。,LoadRunner,基础,加压,”,选项卡,选择下列选项之一:,同时加载所有的,Vuser,:,启动,x,个,Vuser,,每,x,(时,W,分,W,秒):同时开始运行指定数目的,Vuser,,并在两次,Vuser,加压之间等待指定的时间。,注意:方案运行时,您可以在方案中添加,Vuser,组,然后启用它们。在逐渐加压模式下,如果在方案中的所有,Vuser,都加压之后添加,Vuser,组,则新的组将立即开始加载,LoadRunner,基础,“,持续时间,”,选项卡,选择下列选项之一:,运行直到完成,在加压完成之后运行,x,(时,W,分,W,秒),初始化时间很长的,Vuser,在可能方案结束之前无法达到,“,正在运行,”,状态。要确保所有的,Vuser,都在方案中运行,请选中,“,运行之前初始化所有的,Vuser,”,复选框。,LoadRunner,基础,“,减压,”,选项卡,注意:仅当在,“,持续时间,”,选项卡中选中了第二个选项时,才适用,“,减压,”,选项卡设置。,选择下列选项之一:,同时停止所有的,Vuser,:同时停止组中的所有,Vuser,。,停止,x,个,Vuser,,每,x,(时,W,分,W,秒):在指定的时间段内停止一定数目的,Vuser,。,LoadRunner,基础,创建面向目标的方案,在面向目标的方案中,您可以定义您希望实现的测试目标,,LoadRunner,将根据定义的目标自动为您创建一个方案。,在一个面向目标的方案中,您可以定义五种类型的目标:虚拟用户数、每秒点击次数(仅,Web Vuser,)、每秒事务数、每分钟页面数(仅,Web Vuser,)或方案的事务响应时间。,使用,“,编辑方案目标,”,对话框可以对方案目标进行定义。,注意:要定义每秒事务数或事务响应时间目标类型,脚本中必须包含事务。对于每种目标类型,您可以定义脚本中希望测试的事务,LoadRunner,基础,目标的种类,每次场景运行只能设置一个目标。,Virtual Users Goal,:虚拟用户目标类型,需要测试多少人可以同时运行,Web,Pages per Minute,、,Hits per Second,、,Transactions per Second,:每分钟页面数和每秒点击次数、事务响应时间,,Controller,试图使用最少的虚拟用户来达到定义的目标。如果使用最少的用户,不能达到目标,增加用户数,直到定义的最大值。,Transactions Response Time,:如果想知道在多少用户并发访问网站时,事务的响应时间达到性能指标说明书中规定响应时间的最大值。,LoadRunner,基础,“,方案设置,”,选项卡,在,“,方案设置,”,选项卡中,您可以设置方案在达到目标后继续运行的时间长度,以及方案无法达到目标时是否继续。,达到目标后再运行:设置方案在达目标后继续运行的时间长度。,如果无法达到目标:选择下面两个选项中的一个:,停止方案并保存结果:若无法达到您定义的目标,指示,Controller,停止方案并保存方案结果。,继续运行方案,无需达到目标:指示,Controller,继续运行方案,即使无法达到设定的目标,。,LoadRunner,基础,“,加载行为,”,选项卡,加压:选择下列选项之一:,自动:指示,Controller,运行一批中默认数量的,Vuser,在,x,时间后达到目标:选择,Controller,达到目标之前,方案运行的时间。,渐进速度(不可用于,“,每秒事务数,”,和,“,事务响应时间,”,目标类型):选择增长速度,,Controller,将按照该速度达到您的目标(,X,时间内的,X,虚拟用户数,/,点击次数,/,页面数)。,注:以上的说明是以选择的目标为,Virtual Users,为基础的。选择不同的目标,内容会稍微有一点不同。,LoadRunner,基础,使用集合点,在方案运行期间,可以通过使用集合点指示多个,Vuser,同时执行任务。,集合点可以在服务器上创建密集的用户负载,并使,LoadRunner,能够测量服务器在负载状态下的性能。,通过创建集合点,可以确保多个,Vuser,同步操作。当,Vuser,到达某个集合点时,它就会被,Controller,滞留在该处。当达到要求的,Vuser,数或者经过一段指定的时间后,,Controller,就会从集合中释放,Vuser,。,LoadRunner,基础,集合点创建过程,1,、,选择,“,方案,”,“,集合,”,。将打开,“,集合信息,”,对话框。,2,、从,“,集合,”,框中选择集合,然后单击,“,策略,”,按钮。将打开,“,策略,”,对话框,选择策略,3,、单击,“,确定,”,保存设置,LoadRunner,基础,设置集合策略,设置集合策略可以决定,Vuser,如何处理集合点。,释放策略:设置一次有几个,Vuser,从集合中释放,超时:从集合中释放,Vuser,之前,,Controller,要等待多长时间。每个,Vuser,到达集合点之,LoadRunner,都会等待一个最大超时间隔,这个超时间隔是为下一个到达的,Vuser,设置的。,如果下一个,Vuser,没能在超时时间内到达,,Controller,就会合中释放所有,Vuser,。,每当有新,Vuser,到达,计时器就会重置为零。默认的超时是三十秒。,LoadRunner,基础,运行方案,运行方案时,会为,Vuser,组分配负载生成器并执行它们的,Vuser,脚本。在方案执行期间,,LoadRunner,将:,记录在,Vuser,脚本中定义的事务的持续时间,执行包括在,Vuser,脚本中的集合,收集,Vuser,生成的错误、警告和通知消息,在方案运行时,您可以监视每个,Vuser,、查看由,Vuser,生成的错误、警告和通知消息以及停止,Vuser,组和各个,Vuser,。可以指示,LoadRunner,允许单个,Vuser,或组中的,Vuser,在停止前完成它们正在运行的迭代、在停止前完成它们正在运行的操作或者立即停止运行,。,LoadRunner,基础,监视方案,可以使用,LoadRunner,联机运行时、事务、,Web,资源、系统资源、网络延迟、防火墙服务器资源、,Web,服务器资源、,Web,应用程序服务器资源、数据库服务器资源、流媒体资源、,ERP/CRM,服务器资源、,Java,性能、应用程序部署和中间件性能监视器来监视方案执行。,LoadRunner,提供下列联机监视器:,“,运行时,”,监视器显示参与方案的,Vuser,的数目和状态,以及,Vuser,所生成的错误数量和类型。此外还提供用户定义的数据点图,其中显示,Vuser,脚本中的用户定义点的实时值。,LoadRunner,基础,联机监视,默认情况下,,LoadRunner,的,“,运行,”,视图中将显示四个图:,“,正在运行的,Vuser,”,、,“,事务响应时间,”,、,“,每秒点击次数,”,和,“,Windows,资源,”,。通过单击图树视图中的其他图并将其拖至图视图区域,可以显示这些图。或者,可以使用,“,打开新图,”,对话框打开新的图,操作步骤,:,1,、右键单击图并选择,“,打开新图,”,。将打开,“,打开新图,”,对话框。,2,、单击左窗格中的,“,+,”,号以展开图树,并选择图。可以在,“,图描述,”,框中查看该图的描述。,3,、单击,“,打开图,”,该图将显示在图视图区域中。,LoadRunner,基础,合并图,通过,LoadRunner,可以将同一方案中的两个图的结果合并到一个图中。通过合并,可以一次比较几个不同的度量。叠加共用同一,X,轴的两个图的内容时,合并图左侧的,Y,轴显示当前图的值。右侧的,Y,轴显示合并图的值。,要叠加两个图,请执行下列操作:,1,、右键单击要叠加的某个图,然后选择,“,叠加图,”,。将打开,“,叠加图,”,对话框。,2,、选择要与当前图叠加的图。该下拉列表仅显示与当前图共用同一,X,轴的活动图。,3,、输入叠加图的标题。,4,、单击,“,确定,”,该合并图将显示在图视图区域中。,LoadRunner,基础,关于系统资源监视,影响事务响应时间的一个主要因素是系统资源使用率。使用,LoadRunner,资源监视器,可以在方案运行期间监视计算机上的,Windows,、,UNIX,、,SNMP,、,AntaraFlame Thrower,和,SiteScope,资源,并可以确定特定计算机上为何出现瓶颈,.,下面以对,Windows,为例进行举例,LoadRunner,基础,Windows,资源性能,1,、,将,Windows,资源图拖进,“,运行,”,视图中。,2,、右键单击该图并选择,“,添加度量,”,,在对话框的,“,监视的服务器计算机,”,部分,单击,“,添加,”,以输入要监视计算机的服务器名或,IP,地址。选择计算机运行的平台,单击,“,确定,”,。,3,、在,“,Windows,资源,”,对话框的,“,资源度量,”,部分中,选择要监视的度量。,4,、如果要选择其他度量,请单击,“,添加,”,。将打开一个显示可用度量和服务器属性的对话框。单击,“,添加,”,将选定的计数器放到资源列表中。向该列表中添加所有需要的资源,然后单击,“,关闭,”,。,5,、在,“,Windows,资源,”,对话框中,单击,“,确定,”,以激活监视器。,性能测试的范畴,软件性能的范畴较广,通常包括执行效率、资源占用、稳定性、安全性、兼容性、可扩展性、可靠性等。,用户视角的软件性能,从用户角度来说,软件性能就是软件对用户操作的响应时间。,2-5-10,原则。,产品开发人员视角的软件性能,架构设计是否合理;,数据库设计是否合理;,代码是否存在性能方面的问题;,系统中是否有不合理的内存使用方式。,性能测试的范畴,系统管理员视角的软件性能,系统运行时服务器的状态,如,CPU,利用情况、内存使用情况等;,系统是否能够实现扩展;,系统支持多少用户访问;,系统的稳定性,是否支持,7*24,小时的业务访问。,性能测试指标介绍,并发用户数,响应时间,交易成功率,Throughput,(,吞吐量),TPS,(,每秒传输率,)与,HPS,(每秒点击率),资源利用率,性能测试指标,并发用户数(最佳、最大),应用系统可支持的并发用户数通常反映系统的容量,即系统的处理能力情况。,响应时间,响应时间指的是从开发端发起一个请求开始,到客户端接收到从服务器端返回的响应结束,这个过程所耗费的时间。,性能测试指标,交易成功率,交易成功率指的是一段时间内成功的交易数在总交易数中所占的比例,金融行业应用系统一般要求在,99%,以上。,吞吐量,吞吐量是指单位时间内系统处理的客户请求的数量,直接体现应用系统的性能承载能力。,性能测试指标,TPS,与,HPS,TPS,:,Transaction per second-,指应用系统每秒钟处理完成的交易数量,是估算应用系统性能的重要依据。,一般而言,评价系统性能均以每秒完成的技术交易的数量来衡量。,系统整体处理能力取决于处理能力最低模块的,TPS,值。,HPS,:,Hit per second,每秒点击次数,指一秒钟的时间内用户对,web,页面的链接、提交按钮等点击总和。,HPS,一般与,TPS,成正比关系,是,B/S,系统中非常重要的性能指标之一。,性能测试指标,资源利用率,资源利用率是指系统在负载运行期间,数据库服务器、应用服务器、,web,服务器的,CPU,、内存、硬盘、外置存储,网络带宽的使用率。,据经验,低于,20%,的利用率为资源空闲,,20%-60%,的使用率为资源使用稳定,,60%-80%,的使用率表示资源使用饱和,超过,80%,的资源使用率必须尽快进行资源调整与优化。,其他指标,在性能测试过程中还有大量与软件产品或硬件设备相关的测算指标;,行业相关指标,性能测试过程,规划阶段,(,测试目标、测试范围、测试组织、测试时间,),准备阶段,(,测试环境、测试数据、测试脚本、测试程序,),执行阶段,(,响应时间基准测试、负载测试、压力测试、容量测试、稳定性测试,),调优阶段,(,收集,/,分析测试结果,定位瓶颈,性能调优,),报告阶段,(,测试成果确认、测试目标完成确认、测试报告编制,),性能测试过程,测试目标,测试目标一般包含应用系统要达到的性能指标。,系统处理的最大并发用户数;,系统运行高峰时期,响应时间小于,X,秒;,TPS,不小于多少,X,;,服务器资源利用率不超过,80%,;,运行,7*24,小时,无明显的内存泄漏现象。,性能测试过程,测试监控项,操作系统监控,Cpu,内存,IO,:通过,Iostat,查看,iowait,的运行情况,文件系统空间监控,中间件,执行线程数,数据库连接数,查看队列状态(空闲执行线程数,/,队列长度),查看,Weblogic,启动的内存大小、,Jvm,大小以及输出,性能测试过程,测试监控项,数据库,建索引,共享池,命中率,避免全表扫描,性能调优介绍,调优基本原则,如果某个部分不是瓶颈,就不要试图优化。,优化是为系统提供足够的资源并且充分的利用资源,而不是无节制的扩充资源。,优化有时候也意味着合理的分配或划分任务。,优化可能会过头,注意协调整个系统的性能。,性能调优介绍,Oracle,Oracle,中的两类等待事件,空闲等待:,Oracle,正在等待某种动作的发生,Client message(,客户机消息,),SQL*Net message from client(,来自客户端的消息,),Rdbms ipc message(,数据库,ipc,消息,),非空闲等待:数据库发生了竞争,Buffer busy waits(,数据高速缓存忙等待,),;,Db read(,数据文件离散读,);,Db read(,数据文件顺序读,),;,Enqueue(,队列,),;,性能调优介绍,Oracle,监控,
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服