LoadRunner基础教程

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

LoadRunner性能测试基础学习目标学习目标性能测试是什么性能测试的范畴性能指标介绍性能测试的类型性能测试过程性能调优介绍LoadRunner基础性能测试是什么?定义性能测试是指通过特定方式,对被测系统按照一定策略施加压力,获取系统响应时间、TPS、吞吐量、资源利用率等性能指标,以期保证生产系统的性能能够满足用户需求的过程。命名用户数命名用户数是指在应用系统中注册的所有系统用户。该用户数取决于系统应用范围和业务范围,可以通过统计应用系统数据库中用户登记表取得。在线用户数在线用户数是指同时登录应用系统的用户数量。该数据可通过检查系统应用与数据库连接取得。对于已投产系统,该数量一般通过系统跟踪监控获取。新投产系统通过经验值估算。性能测试是什么?并发用户数并发用户数是指系统运行期间同一时刻进行业务操作的用户数量。该数量取决于用户操作习惯、业务操作间隔和单笔交易的响应时间。使用频率较低的应用系统并发用户数一般为在线用户数的5%左右。使用频率较高的应用系统并发用户数一般为主线用户数的10%左右。交易交易分为业务层面和技术层面两种定义。业务层面交易是指完成一次完整的业务操作,如进行一次查询、转账。技术层面交易是指进行一次应用程序至应用程序、或者应用程序至数据库的系统操作。一般的一笔业务交易由多笔技术交易组成。根据业务交易的复杂度和系统应用架构的不同,其比例大致为1:2--1:10性能测试的范畴软件性能的范畴较广,通常包括执行效率、资源占用、稳定性、安全性、兼容性、可扩展性、可靠性等。用户视角的软件性能从用户角度来说,软件性能就是软件对用户操作的响应时间。2-5-10原则。产品开发人员视角的软件性能架构设计是否合理;数据库设计是否合理;代码是否存在性能方面的问题;系统中是否有不合理的内存使用方式。性能测试的范畴系统管理员视角的软件性能系统运行时服务器的状态,如CPU利用情况、内存使用情况等;系统是否能够实现扩展;系统支持多少用户访问;系统的稳定性,是否支持7*24小时的业务访问。性能测试指标介绍并发用户数响应时间交易成功率吞吐量TPS与HPS资源利用率性能测试指标并发用户数(最佳、最大)应用系统可支持的并发用户数通常反映系统的容量,即系统的处理能力情况。响应时间响应时间指的是从开发端发起一个请求开始,到客户端接收到从服务器端返回的响应结束,这个过程所耗费的时间。性能测试指标交易成功率交易成功率指的是一段时间内成功的交易数在总交易数中所占的比例,金融行业应用系统一般要求在99%以上。吞吐量吞吐量是指单位时间内系统处理的客户请求的数量,直接体现应用系统的性能承载能力。性能测试指标TPS与HPSTPS:Transactionpersecond-指应用系统每秒钟处理完成的交易数量是估算应用系统性能的重要依据。一般而言,评价系统性能均以每秒完成的技术交易的数量来衡量。系统整体处理能力取决于处理能力最低模块的TPS值。HPS:Hitpersecond每秒点击次数指一秒钟的时间内用户对web页面的链接、提交按钮等点击总和。HPS一般与TPS成正比关系,是B/S系统中非常重要的性能指标之一。性能测试指标资源利用率资源利用率是指系统在负载运行期间,数据库服务器、应用服务器、web服务器的CPU、内存、硬盘、外置存储,网络带宽的使用率。据经验,低于20%的利用率为资源空闲,20%--60%的使用率为资源使用稳定,60%--80%的使用率表示资源使用饱和,超过80%的资源使用率必须尽快进行资源调整与优化。其他指标在性能测试过程中还有大量与软件产品或硬件设备相关的测算指标;行业相关指标性能测试类型负载测试压力测试疲劳强度测试大数据量测试性能测试类型负载测试(LoadTest)通过逐步增加系统负载,测试系统性能的变化,并最终确定在满足性能指标的情况下,系统所能承受的最大负载量的测试。压力测试(StressTest)通过逐步增加系统负载,测试系统性能的变化,并最终确定在什么负载条件下系统性能处于失效状态,并以此来获得系统能够提供的最大服务级别的测试。压力测试是一种特定类型的负载测试。性能测试类型疲劳强度测试通常是采用系统稳定运行情况下能够支持的最大并发用户数或者日常运行用户数,持续执行一段时间业务,通过综合分析交易执行指标和资源监控指标来确定系统处理最大工作量强度性能的过程。疲劳强度测试可以反映出系统的性能问题,例如内存泄漏等。大容量测试(VolumeTest)对特定存储、传输、统计、查询业务的测试。性能测试过程规划阶段(测试目标、测试范围、测试组织、测试时间)准备阶段(测试环境、测试数据、测试脚本、测试程序)执行阶段(响应时间基准测试、负载测试、压力测试、容量测试、稳定性测试)调优阶段(收集/分析测试结果,定位瓶颈,性能调优)报告阶段(测试成果确认、测试目标完成确认、测试报告编制)性能测试过程测试目标测试目标一般包含应用系统要达到的性能指标。系统处理的最大并发用户数;系统运行高峰时期,响应时间小于X秒;TPS不小于多少X;服务器资源利用率不超过80%;运行7*24小时,无明显的内存泄漏现象。性能测试过程测试监控项操作系统监控○Cpu○内存○IO:通过Iostat查看iowait的运行情况○文件系统空间监控中间件○执行线程数○数据库连接数○查看队列状态(空闲执行线程数/队列长度)○查看Weblogic启动的内存大小、Jvm大小以及输出性能测试过程测试监控项数据库○建索引○共享池——命中率○避免全表扫描性能调优介绍调优基本原则如果某个部分不是瓶颈,就不要试图优化。优化是为系统提供足够的资源并且充分的利用资源,而不是无节制的扩充资源。优化有时候也意味着合理的分配或划分任务。优化可能会过头,注意协调整个系统的性能。性能调优介绍–OracleOracle中的两类等待事件空闲等待:Oracle正在等待某种动作的发生Clientmessage(客户机消息)SQL*Netmessagefromclient(来自客户端的消息)Rdbmsipcmessage(数据库ipc消息)非空闲等待:数据库发生了竞争Bufferbusywaits(数据高速缓存忙等待);Dbfilescatteredread(数据文件离散读);Dbfilesequentialread(数据文件顺序读);Enqueue(队列);性能调优介绍–Oracle监控Oracle性能的sql语句selectsid,eventfromv$session_waitwhereeventnotlike'rdbms%'andeventnotlike'SQL*Netmessage%';selectsql_textfromv$sqltext_with_newlinesawhere(a.hash_value,a.address)in(selectDECODE(sql_hash_value,0,prev_hash_value,sql_hash_value),DECODE(sql_hash_value,0,prev_sql_addr,sql_address)fromv$sessionbWHEREb.sid=4)orderbypieceasc;性能调优介绍–Oracle通过ORACLE提供的底层SQL来查找性能最差的SQL。SELECT*FROM(SELECTPARSING_USER_IDEXECUTIONS,SORTS,COMMAND_TYPE,DISK_READS,sql_textFROMv$sqlareaORDERBYdisk_readsDESC)WHEREROWNUM10;--查找前十条性能差的sqlLoadRunner基础LoadRunner常用的版本有哪些?V7.8V8.0V8.1V9.0V9.1V9.5LoadRunner是那个公司的产品?Mecury公司,现为HP收购世界500强的企业中,有75%的企业使用其产品TestDirector9.0版本称为QC(MercuryQualityCenter)WinRunnerLoadRunnerQuickTestProfessional(QTP)Loadrunner支持哪些常用的插件?.net和JBuilder两种插件Loadrunner常用的开发语言是什么?CLoadRunner基础Loadrunner支持哪些常用协议?Web(HTTP/HTML)Sockets.net协议webservices常用数据库协议(ODBC,ORACLE,SQLSERVER等邮件(SMTP、pop3)其它协议LoadRunner基础Loadrunner常用组件Controller—VirtualUserGenerator(Vugen)—创建脚本Controller—设计和运行场景Analysis—分析场景TuningConsole(LoadRunner8.0以上)—调优LoadRunner基础○设置RecordingOptions选项?(以单协议http/html为例)1.菜单tools-RecordingOptions进入录制的设置窗体2.Recording标签页:选用哪种录制方式3.Browser标签页:浏览器的选择4.RecordingProxy标签页:浏览器上的代理设置5.Advanced标签页:可以设置录制时的thinktime,支持的字符集标准等6.Correlation标签页:手工设置关联,通过关联可在测试执行过程中保存动态值。使用这些设置可以配置VuGen在录制过程中执行的自动关联的程度。LoadRunner基础HTML-Basedscrīpt和URL-Basedscrīpt录制的区别?1.基于浏览器的应用程序推荐使用HTML-Basedscrīpt。2.不是基于浏览器的应用程序推荐使用URL-Basedscrīpt。3.如果基于浏览器的应用程序中包含了Javascrīpt并且该脚本向服务器产生了请求,比如DataGrid的分页按钮等,也要使用URL-Basedscrīpt方式录制。4.基于浏览器的应用程序中使用了HTTPS安全协议,使用URL-Basedscrīpt方式录制。5.录制过程中不要使用浏览器的“后退”功能,LoadRunner对其支持不太好。LoadRunner基础创建脚本操作步骤:1.启动VuGen:选择需要新建的协议脚本,可以创建单协议,或是多协议脚本2.点击StartRecord按钮,输入程序地址,开始进行录制3.使用VuGen进行录制:创建的每个Vuser脚本都至少包含三部分:vuser_init、一个或多个Actions及vuser_end。录制期间,可以选择脚本中VuGen要插入已录制函数的部分。运行多次迭代的Vuser脚本时,只有脚本的Actions部分重复,而vuser_init和vuser_end部分将不重复LoadRunner基础完善脚本插入事务插入集合点模拟用户思考时间参数化输入插入Text/Imag检查点Run-TimeSetting选项LoadRunner基础插入事务(Transaction)事务为衡量服务器的性能,需要定义事务。LoadRunner运行到该事务的开始点时,LR就会开始计时,直到运行到该事务的结束点,这个事务的运行时间在结果中会有反映。插入事务操作可以在录制过程中进行,也可以在录制结束后进行。LR运行在脚本中插入不限数量的事务。在菜单中单击InsertStartTransaction后,输入事务名称,也可在录制过程中进行,在需要定义事务的操作后面插入事务的“结束点”。默认情况下,事务的名称列出最近的一个事务名称。一般情况下,事务名称不用修改。事务的状态默认情况下是LR_AUTO。一般情况下,我们也不需要修改状态的Load

1 / 69
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功