LoadRunner培训教学讲解课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《LoadRunner培训教学讲解课件.ppt》由用户(ziliao2023)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- LoadRunner 培训 教学 讲解 课件
- 资源描述:
-
1、学习目标学习目标n学习目标学习目标p性能测试是什么p性能测试的类型pLoad Runner基础p性能测试的范畴p性能指标介绍p性能测试过程p性能调优介绍性能测试是什么?性能测试是什么?n定义p性能测试是通过自动化的测试工具模拟多种正常、峰值以及异常负载条件来对系统的各项性能指标进行测试。p负载测试和压力测试都属于性能测试,两者可以结合进行。通过负载测试,确定在各种工作负载下系统的性能,目标是测试当负载逐渐增加时,系统各项性能指标的变化情况。压力测试是通过确定一个系统的瓶颈或者不能接收的性能点,来获得系统能提供的最大服务级别的测试。n在线用户数在线用户数p在线用户数是指同时登录应用系统的用户数量
2、。p该数据可通过检查系统应用与数据库连接取得。p对于已投产系统,该数量一般通过系统跟踪监控获取。p新投产系统通过经验值估算。性能测试是什么?性能测试是什么?n并发用户数并发用户数n并发主要是针对服务器而言,是否并发的关键是看用户操作是否对服务器产生了影响。因此,并发用户数量的正确理解为:在同一时刻与服务器进行了交互的在线用户数量,这种交互既可以是单向的传输数据,也可以是双向的传送数据。并发用户数是指系统运行期间同一时刻进行业务操作的用户数量。该数量取决于用户操作习惯、业务操作间隔和单笔交易的响应时间。使用频率较低的应用系统并发用户数一般为在线用户数的5%左右。使用频率较高的应用系统并发用户数一
3、般为主线用户数的10%左右。n交易交易p交易分为业务层面和技术层面两种定义。p业务层面交易是指完成一次完整的业务操作,如进行一次查询、转账。p技术层面交易是指进行一次应用程序至应用程序、或者应用程序至数据库的系统操作。p一般的一笔业务交易由多笔技术交易组成。根据业务交易的复杂度和系统应用架构的不同,其比例大致为1:2-1:10性能测试类型性能测试类型n负载测试负载测试 n压力测试压力测试 n疲劳强度测试疲劳强度测试 n大数据量测试大数据量测试 性能测试类型性能测试类型n负载测试负载测试(Load Test)(Load Test)通过逐步增加系统负载,测试系统性能的变化,并最终确定在满足性能满足
4、性能指标的情况下指标的情况下,系统所能承受的最大负载量的测试。n压力测试压力测试(Stress Test)(Stress Test)通过逐步增加系统负载,测试系统性能的变化,并最终确定在什么负载条件下系统性能处于失效状态处于失效状态,并以此来获得系统能够提供的最大服务级别的测试。压力测试是一种特定类型的负载测试。性能测试类型性能测试类型n疲劳强度测试疲劳强度测试通常是采用系统稳定运行情况下能够支持的最大并发用户数或者日常运行用户数,持续执行一段时间业务,通过综合分析交易执行指标和资源监控指标来确定系统处理最大工作量强度性能的过程。疲劳强度测试可以反映出系统的性能问题,例如内存泄漏等。n大容量测
5、试大容量测试(Volume Test)(Volume Test)对特定存储、传输、统计、查询业务的测试。LoadRunnerLoadRunner基础基础nLoadRunnerLoadRunner常用的版本有哪些?常用的版本有哪些?l V7.8 V8.0 V8.1 V9.0 V9.1 V9.5 V11nLoadRunnerLoadRunner是那个公司的产品?是那个公司的产品?l Mecury公司,现为HP收购 世界500强的企业中,有75%的企业使用其产品l Test Director 9.0版本称为QC(Mercury Quality Center)l Win Runner l Load R
6、unner l Quick Test Professional(QTP)nLoadrunnerLoadrunner支持哪些常用的插件?支持哪些常用的插件? 和JBuilder 两种插件 nLoadrunnerLoadrunner常用的开发语言是什么?常用的开发语言是什么?l CLoadRunnerLoadRunner基础基础LoadrunnerLoadrunner常用组件常用组件pVirtual User Generator(Vugen)创建脚本pController 设计和运行场景pAnalysis 分析场景pTuning Console(LoadRunner8.0以上)调优LoadRunn
7、erLoadRunner基础基础pLoadrunnerLoadrunner支持哪些常用协议?支持哪些常用协议?Web(HTTP/HTML)Sockets .net 协议 web services 常用数据库协议(ODBC,ORACLE,SQLSERVER 等)邮件(SMTP、pop3)其它协议思考问题思考问题:n为什么LR录完之后VuGen里产生不了脚本?nB/S结构的一定选择WEB(HTTP/HTML)?nC/S结构的一定是WinSocket协议?nJAVA 开发的C/S选择什么 协议,C开发的B/S如何选择协议?LoadRunner协议选择n如何选择协议?很多人使用很多人使用loadrun
8、ner录制脚本时都得不到理想的结果,出现这种情况大多是由于录录制脚本时都得不到理想的结果,出现这种情况大多是由于录制脚本时选择了不当的协议。那我们在录制脚本前如何选择合适的通信协议呢?用单制脚本时选择了不当的协议。那我们在录制脚本前如何选择合适的通信协议呢?用单协议还是双协议?协议还是双协议?nLoadRunner属于应用在客户端的测试工具,在客户端模拟大量并发用户去访问服务器,从而达到给服务器施加压力的目的。所以说LoadRunner模拟的就是客户端,其脚本代表的是客户端用户所进行的业务操作,即只要脚本能表示用户的业务操作就可以。n1.LR支持多种协议,请大家一定要注意,这个地方协议指的是你
9、的Client端通过什么协议访问的Server,Client一般是面向最终使用者的,Server是第一层Server端,因为现在的体系架构中经常Server层也分多个层次,什么应用层,什么数据层等等,LR只管Client如何访问第一层Server.n2.特别要注意某些应用,例如一个Web系统,这个系统是通过ActiveX控件来访问后台的,IE只是一个容器,而ActiveX控件访问后台是通过COM/DCOM协议的,这种情况就不能使用Web协议,否则你什么也录制不到,所以,LR工程师一定要了解应用程序的架构和使用的技术。3.象HTTPS,一般来讲一定要选择多协议,但在选择具体协议的时候一定只选We
10、b协议,这时候才能作那个端口映射。LoadRunner协议选择n通常协议选择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(ftp,smtp)这些可以选择Windwos Sockets协议。4.至于其他的ERP,EJB(需要ejbdetector.jar),选择相应的协议即可.5.一般
11、可以使用Java vuser协议录制由java编写的C/S模式的软件,当其他协议都没有用时,只能使用winsocket协议LoadRunnerLoadRunner基础基础p设置设置Recording Options Recording Options 选项选项?(以单协议http/html为例)1.菜单tools-Recording Options进入录制的设置窗体2.Recording标签页:选用哪种录制方式3.Browser标签页:浏览器的选择4.Recording Proxy 标签页:浏览器上的代理设置 5.Advanced 标签页:可以设置录制时的think time,支持的字符集标准
12、等6.Correlation标签页:手工设置关联,通过关联可在测试执行过程中保存动态值。使用这些设置可以配置 VuGen 在录制过程中执行的自动关联的程度。LoadRunnerLoadRunner基础基础nHTML-Based scrpt HTML-Based scrpt 和和URL-Based scrpt URL-Based scrpt 录制的区别录制的区别?1.基于浏览器的应用程序推荐使用HTML-Based scrpt。2.不是基于浏览器的应用程序推荐使用URL-Based scrpt。3.如果基于浏览器的应用程序中包含了Java scrpt并且该脚本 向服务器产生了请求,比如DataG
13、rid的分页按钮等,也要使用URL-Based scrpt方式录制。4.基于浏览器的应用程序中使用了HTTPS安全协议,使用URL-Based scrpt方式录制。5.录制过程中不要使用浏览器的“后退”功能,LoadRunner对其支持不太好。LoadRunnerLoadRunner基础基础n创建脚本操作步骤:创建脚本操作步骤:1.启动VuGen:选择需要新建的协议脚本,可以创建单协议,或是多协议脚本2.点击Start Record按钮,输入程序地址,开始进行录制3.使用VuGen进行录制:创建的每个 Vuser 脚本都至少包含三部分:vuser_init、一个或多个 Actions 及vus
14、er_end。录制期间,可以选择脚本中 VuGen 要插入已录制函数的部分。运行多次迭代的Vuser 脚本时,只有脚本的Actions部分重复,而vuser_init和vuser_end部分将不重复LoadRunnerLoadRunner基础基础n完善脚本完善脚本p插入事务插入事务 p插入集合点插入集合点 p模拟用户思考时间模拟用户思考时间p参数化输入参数化输入 p插入插入Text/Imag Text/Imag 检查点检查点 pRun-Time SettingRun-Time Setting选项选项LoadRunnerLoadRunner基础基础n插入事务插入事务(Transaction)(T
15、ransaction)p事务为衡量服务器的性能,需要定义事务。pLoadRunner 运行到该事务的开始点时,LR就会开始计时,直到运行到该事务的结束点,这个事务的运行时间在结果中会有反映。p插入事务操作可以在录制过程中进行,也可以在录制结束后进行。LR 运行在脚本中插入不限数量的事务。p在菜单中单击InsertStart Transaction后,输入事务名称,也可在录制过程中进行,在需要定义事务的操作后面插入事务的“结束点”。默认情况下,事务的名称列出最近的一个事务名称。一般情况下,事务名称不用修改。事务的状态默认情况下是LR_AUTO。一般情况下,我们也不需要修改状态的LoadRunne
16、rLoadRunner基础基础n插入集合点插入集合点(RendezvousRendezvous)n集合点:如果脚本中设置集合点,可以达到绝对的并发,但是集合点并不是并发用户的代名词,设置结合点和不设置结合点,需要看你站在什么角度上来看待并发,是整个服务器,还是提供服务的一个事务;p插入集合点是为了衡量在加重负载的情况下服务器的性能情况。p在测试计划中,可能会要求系统能够承受1000 人甚至更多同时提交数据,在LR 中可以通过在提交数据操作前面加入集合点,当虚拟用户运行到提交数据的集合点时,LR 就会检查同时有多少用户运行到集合点,从而达到测试计划中的需求。p具体的操作方法如下:在需要插入集合点
17、的前面,点击菜单InsertRendezvous,也可在录制时按插入集合点按钮p注意:集合点经常和事务结合起来使用。集合点只能插入到Action 部分,vuser_init和vuser_end 中不能插入集合点。LoadRunnerLoadRunner基础基础n模拟用户思考时间模拟用户思考时间p用户在执行两个连续操作期间等待的时间称为“思考时间”。pVuser 使用lr_think_time 函数模拟用户思考时间。录制 Vuser 脚本时,VuGen 将录制实际的思考时间并将相应的 lr_think_time 语句插入到 Vuser 脚本。p可以编辑已录制的 lr_think_time 语句,
18、也可在 脚本中手动添加更多lr_think_time 语句。p以秒为单位指定所需的思考时间LoadRunnerLoadRunner基础基础n参数化参数化p如果用户在录制脚本过程中,填写提交了一些数据,这些操作都被记录到了脚本中。当多个虚拟用户运行脚本时,都会提交相同的记录,这样不符合实际的运行情况,而且有可能引起冲突。为了真实的模拟实际环境,需要各种各样的输入。p录制业务流程时,VuGen 生成一个包含可以用参数替换已录制的值。这被称为脚本参数化。p参数化包含以下两项任务:p 在脚本中用参数取代常量值。p 设置参数的属性以及数据源。p注意:不是所有的函数都可以参数化的。也可以将参数化的内容进行
19、还原LoadRunnerLoadRunner基础基础n创建参数化创建参数化1.选中需要参数化的内容,点击右键,选择 Replace with a parameter2.在“参数名”框中键入参数的名称,或从列表中选择一个现有的参数名。3.在从“参数类型”列表中选择参数类型。4.点击属性,设置参数属性5.也可以点击菜单:VuserParameter List,进行添加参数,设置相应的属性LoadRunnerLoadRunner基础基础n参数的类型介绍参数的类型介绍p数据文件:文件(现有文件或者用 VuGen 或 MS Query 创建的文件)中包含的数据p分配内部数据:Vuser 内部生成的数据。
20、这包括日期/时间、组名、迭代编号、负载生成器名、随机编号、唯一编号和 Vuser IDp用户定义的函数:使用外部 DLL 函数生成的数据LoadRunnerLoadRunner基础基础n参数化设置属性界面参数化设置属性界面LoadRunnerLoadRunner基础基础n参数属性设置参数属性设置p定义选取列:表示指定选取哪一列的值p定义“列分隔符:用来分隔表格中的列的字符p选取下一个值的方式:表示在 Vuser 脚本执行期间如何选择表格数据。选项包括:“顺序”、“随机”和“唯一”。p从“更新值的时间”列表中选择更新选项。选项包括“每次迭代”、“每次出现”和“一次”。参数选项说明参数选项说明n1
21、.参数更新方法:n 每次出现:指示Vuser在每次参数出现时使用新值。当使用同一个参数的几个语句不相关时,该方法非常有用。例如,对于随机数据,在该参数每次出现时都使用新值可能是非常有用的。每次迭代:指示Vuser为每次脚本迭代使用新值。如果一个参数在脚本中出现了若干次,则Vuser为整个迭代中所有出现的该参数使用同一个值。当使用同一个参数的几个语句相对时,该方法非常有用。一次:指示Vuser在方案运行期间仅对参数值更新一次。Vuser为所有出现的该参数和所有迭代使用同一个参数值。当使用日期和时间时,该类型可能会非常有用。参数选项说明参数选项说明n2.“文件”类型参数选择分配方法顺序:顺序地向V
22、user分配参数值。当正在运行的Vuser访问数据表格时,它将会提取下一个可用的数据行。如果在“更新 值的时间”列表框中指定了“每次迭代”,则Vuser将为每一次迭代从数据表格中提取下一个值。如果在“更新值的时间”列表框中指定了“每次出现”,则Vuser将为每一次参数的出现从数据表格中提取下一个值,即使它在同一次迭代中。如果在“更新值的时间”列表框中指定了“一次”,则第一次迭代中分配的值就会在每个Vuser接下来所有的迭代中使用。随机:当测试开始运行时,“随机”方法为每个Vuser分配一个数据表格中的随机值。如果在“更新值的时间”列表框中指定了“每次迭代”,则Vuser将会为每一次迭代从数据表
23、格中提取一个新的随机值。如果在“更新值的时间”列表框中指定了“每次出现”,则Vuser将为每一次参数的出现从数据表格中提取一个新的随机值,即使它在同一次迭代中。如果在“更新值的时间”列表框中指定了“一次”,则第一次迭代中分配的随机值就会在该Vuser的所有迭代中使用。唯一:为每一个Vuser的参数分配一个唯一的属性值。如果在“更新值的时间”列表框中指定了“每次迭代”,则Vuser将为每一次迭代从数据表格中提取下一个唯一值。如果在“更新值的时间”列表框中指定了“每次出现”,则Vuser将会为每一次参数的出现从数据表格中提取一个新的唯一的值,即使它在同一次迭代中。如果在“更新值的时间”列表框中指定
24、了“一次”,则第一次迭代中分配的唯一值就会在每个Vuser的所有接下来的迭代中使用。LoadRunnerLoadRunner基础基础n从现有数据库中导入数据从现有数据库中导入数据p通过 LoadRunner,可以从数据库中导入数据以用于参数化。您可以用下列两种方法中的一种导入数据:p 新建查询p 指定 SQL 语句pVuGen 提供一个指导您完成从数据库中导入数据的过程的向导。在该向导中,您可以指定如何导入数据(通过 MS Query 新建查询或者指定 SQL 语句)。p导入数据之后,它被另存为一个扩展名为.dat 的文件,并且存储为常规参数文件。LoadRunnerLoadRunner基础基
25、础n插入插入Text/Image Text/Image 检查点检查点p在进行压力测试时,为了检查Web 服务器返回的网页是否正确,这些检查点验证网页上是否存在指定的Text 或者Image,还可以测试在比较大的压力测试环境中,被测的网站功能是否保持正确。p操作步骤:1、可以将视图切换到TreeView 视图2、在树形菜单中选择需要插入检查点的一项,然后点鼠标右键,选择将检查点插到该操作执行前(Insert Before)还是执行后(Insert After)。3、在弹出对话框中选择web Checks 下面的Image Check 或是 Text Check4、对需要检查点设置相关的属性Loa
展开阅读全文