您好,欢迎访问三七文档
当前位置:首页 > IT计算机/网络 > 数据库 > LoadRunner基础教程
LoadRunner性能测试基础学习目标学习目标性能测试是什么性能测试的范畴性能指标介绍性能测试的类型性能测试过程性能调优介绍LoadRunner基础性能测试是什么?定义性能测试是指通过特定方式,对被测系统按照一定策略施加压力,获取系统响应时间、TPS、吞吐量、资源利用率等性能指标,以期保证生产系统的性能能够满足用户需求的过程。命名用户数命名用户数是指在应用系统中注册的所有系统用户。该用户数取决于系统应用范围和业务范围,可以通过统计应用系统数据库中用户登记表取得。在线用户数在线用户数是指同时登录应用系统的用户数量。该数据可通过检查系统应用与数据库连接取得。对于已投产系统,该数量一般通过系统跟踪监控获取。新投产系统通过经验值估算。性能测试是什么?并发用户数并发用户数是指系统运行期间同一时刻进行业务操作的用户数量。该数量取决于用户操作习惯、业务操作间隔和单笔交易的响应时间。使用频率较低的应用系统并发用户数一般为在线用户数的5%左右。使用频率较高的应用系统并发用户数一般为主线用户数的10%左右。交易交易分为业务层面和技术层面两种定义。业务层面交易是指完成一次完整的业务操作,如进行一次查询、转账。技术层面交易是指进行一次应用程序至应用程序、或者应用程序至数据库的系统操作。一般的一笔业务交易由多笔技术交易组成。根据业务交易的复杂度和系统应用架构的不同,其比例大致为1:2--1:10性能测试的范畴软件性能的范畴较广,通常包括执行效率、资源占用、稳定性、安全性、兼容性、可扩展性、可靠性等。用户视角的软件性能从用户角度来说,软件性能就是软件对用户操作的响应时间。2-5-10原则。产品开发人员视角的软件性能架构设计是否合理;数据库设计是否合理;代码是否存在性能方面的问题;系统中是否有不合理的内存使用方式。性能测试的范畴系统管理员视角的软件性能系统运行时服务器的状态,如CPU利用情况、内存使用情况等;系统是否能够实现扩展;系统支持多少用户访问;系统的稳定性,是否支持7*24小时的业务访问。性能测试指标介绍并发用户数响应时间交易成功率吞吐量TPS与HPS资源利用率性能测试指标并发用户数(最佳、最大)应用系统可支持的并发用户数通常反映系统的容量,即系统的处理能力情况。响应时间响应时间指的是从开发端发起一个请求开始,到客户端接收到从服务器端返回的响应结束,这个过程所耗费的时间。性能测试指标交易成功率交易成功率指的是一段时间内成功的交易数在总交易数中所占的比例,金融行业应用系统一般要求在99%以上。吞吐量吞吐量是指单位时间内系统处理的客户请求的数量,直接体现应用系统的性能承载能力。性能测试指标TPS与HPSTPS: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大小以及输出性能测试过程测试监控项数据库○建索引○共享池——命中率○避免全表扫描性能调优介绍调优基本原则如果某个部分不是瓶颈,就不要试图优化。优化是为系统提供足够的资源并且充分的利用资源,而不是无节制的扩充资源。优化有时候也意味着合理的分配或划分任务。优化可能会过头,注意协调整个系统的性能。性能调优介绍–OracleOracle中的两类等待事件空闲等待: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.5LoadRunner是那个公司的产品?Mecury公司,现为HP收购世界500强的企业中,有75%的企业使用其产品TestDirector9.0版本称为QC(MercuryQualityCenter)WinRunnerLoadRunnerQuickTestProfessional(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运行在脚本中插入不限数量的事务。在菜单中单击InsertStartTransaction后,输入事务名称,也可在录制过程中进行,在需要定义事务的操作后面插入事务的“结束点”。默认情况下,事务的名称列出最近的一个事务名称。一般情况下,事务名称不用修改。事务的状态默认情况下是LR_AUTO。一般情况下,我们也不需要修改状态的Load
本文标题:LoadRunner基础教程
链接地址:https://www.777doc.com/doc-2881295 .html