- 847.16 KB
- 22页
- 1、本文档共5页,可阅读全部内容。
- 2、本文档内容版权归属内容提供方,所产生的收益全部归内容提供方所有。如果您对本文有版权争议,可选择认领,认领后既往收益都归您。
- 3、本文档由用户上传,本站不保证质量和数量令人满意,可能有诸多瑕疵,付费之前,请仔细先通过免费阅读内容等途径辨别内容交易风险。如存在严重挂羊头卖狗肉之情形,可联系本站下载客服投诉处理。
- 文档侵权举报电话:19940600175。
'非功能测试实施手册Loadrunner操作文件状态:文件编号:[V]草稿当前版本:V1.0[]止式发布作者:真实邪瞳[]正在修改完成日期:2015-12-21XX股份有限公司Xx邮编:XX电话:XX传真:XX
版本历史版木/状态作者参与者起止II期备注V1.0真实邪瞳2015-12-21初稿
目录目录3文档说明4文档目标4文档范围4读者对象4参考规范4术语与缩写解释4非功能测试第一步5测试脚本定制5脚木调试12脚本执行13性能测试13负载测试15压力测试17稳定性测试19性能指针20附加说明21
文档说明文档目标本文阐述了如何使用Loadrunner工具进行Web类项目的性能测试。性能测试范围包括:压力测试、负载极限测试和稳定性测试。文档范围本文档以惠普Loadrunnerl2版本为基础,从性能测试活动开始至结束阶段的脚本定制、执行、结杲分析和测试报告出具的规范。读者对象本文档提供给本产品的项目管理人员,设计人员,开发人员,测试人员及其它相关人员参考。参考规范❖《文书电子文件元数据方案》(DA/T46—2009)术语与缩写解释缩写、术语解释LoadrunnerLoadRunner,是一种预测系统行为和性能的负载测试工具。通过以模拟上千万用户实施并发负载及实时性能监测的方式来确认和查找问题,LoadRunner能够对整个企业架构进行测试。企业使用LoadRunner能最大限度地缩短测试时间,优化性能和加速应用系统的发布周期。LoadRunnernJ*适用于各种体系架构的自动负载测试,能预测系统行为并评估系统性能。性能测试公司内对性能测试定义为根据项确认的需求进行的以测试需求为标准的性能达标测试活动。
负载测试公司内对负载测试定义为在基准测试环境中,根据原则,测定3组系统的负载用户数。压力测试公司内对压力测试定义为在基准测试环境中,测定系统的负载上限用户数。稳定性测试公司内对稳定性测试定义为在基准测试坏境中,使用负载测试3秒负载用户数进行的持续时间不少于8小时的测试活动。非功能测试第一步确认非功能测试需求与测试环境配置。非功能需求从项忖的性能测试需求章节中提取,或经由项H经理、测试主管共同确认的文档外的要求。提取要索为:>并发人数或在线人数,并发人数,指实际应用到测试场景中的虚拟用八数,在线人数,指预估的系统日常使用人数,并发人数=1/10*在线人数;>指定操作的平均响应时间,如需规文档中描述查询响应时间不超过3秒,则视为单个用户进行查询操作不应大于三秒;>服务器侦件性能指标,如需规文档中描述CPU不超过40%,则监控服务器的ProcessorTime%平均不超过40%,峰值不超过44%;测试环境配置包括:系统软件环境(服务器及负载机的操作系统、屮间件、数据库、辅助工具等),系统硬件环境(服务器配置参数、网络配置参数、负载机配置参数),数据库内背景数据量(条H数与总容量)
测试脚本定制使用Loadrunner的VirtualUserGenerator进行脚本定制。在CreateaNewScript窗口选释Web-HTTP/HTML协议
CreateaNewScript?Category:ProtocolFilter:t=D-VuGenaPOP3(PostOfficeProtocol)•Sllverlight5)Web・HTTP/HTMLSingleProtocol中RDP(RemoteDesktopProtocol)£SMP(SAPMobilePlatform)WebServicesMultipleProtocolsMobileStRTE(RemoteTerminalEmulator).:SMTP(SimpleMailProtocol)VWindowsSocketsPopularSFSAP・ClickandScript$TruClient・FirefoxRecent0SAP•Web⑥TruClient・IEKFSAPGUIfcTruClient-MobileWebSiebel・WebGTruClient・NativeMobileLocationC:UserscesDocumentsWuGenScripts.A.SolutionNameEnterasolutionnameorleaveblanktocreateanuntitledsolutionCreatefolderforsolutionScriptName:WebHttpHtml6SolutionTargetProtocolAdvisorCreateCancelScriptName定义脚本的名称Location定义脚本存放路径确认后点击Create按钮。点击⑥Record按钮(Ctrl+R),弹出StartRecording窗口
StartRecording-[WebHttpHtml6]FewerOptionsActionselection:Recordintoaction:*ActionRecordingmode:Record:Application:URLaddress:WebBrowserMicrosoftInternetExplorerhttp://www.baidu.comlSettings:Startrecording:•ImmediatelyIndelayedmodeWorkingdirectory:*C:HPLoadRunnerBinRecordingOptions「StartRecordingCancelRecardintoaction选择vuserJnitURLaddress配置测试系统的访问链接RecodingOptions中各配置项如下
GeneralGeneral:RecodingRecordingScriptk-ProtocolsCodeGenerationCorrelationsConhguMionRulesHTTPPropertiesAdvancedNetworkMappingandFilteringDataForma*ExtenswnChainConfiguratfonCodeGenerationHTTP/HTMLLevelRecordingOptionsHTML-basedsaipt「UfiLbasedscriptHintMovethemouseoveranyitemtoseehdescription.HTMLAdvanced...UR]Advanced..|
RecordingOptionsGeneralRecordingScriptk-ProtocolsCodeGenerationCorrelationsConhguMionRulesHTTPPropertiesAdvancedNetworkMappingandFilteringDataForma*ExtenswnChainConfiguratfonCodeGenerationGeneral:ScriptScriptingLanguageLanguage:|CLangt^geScnptingOptionsProperty囲BasicP~]/CloseallAUTprocesseswhenrecordingstopsp]JGeneratefixedthinktimeafterendtransact!on・・・・□/Generaterecordedeventslog回JGeneratethinktimegreaterthanthreshold□/Maximumnumberoflinesinactionfile回/TrackprocessescreatedasCOMlocalservers1□JUseprotectedapplicationrecording回JWarnmeiftheapplicationbeingrecordedencountersanerrorjValue60000■I|JjDescription:CLanguageRecorderhasbeentogenetaleCcodeThi$modeofcodegenerationi$usefulfoerecordingappJcationsthatusecomptexCOMconstructsandC++objects.
RecordingOptions
点击总“CreateNewAction”新增action“new”并进入著录页面,在著录窗口输入必输项。点击金"InsertStartTransaction"输入事务名称“新增”后,点击新增。系统提示新增成功后点击"InsertEndTransaction"并点击新增事务,表示该事务结束。点击輻“CreateNewAction”新增action“edit”并选择一条条目,在修改窗口输入必输项。点击忙1uInsertStartTransaction输入事务名称“修改”后,点击保存。系统提一,QU、,乂亠-亠_亠亠-」亠水保存成功后点击“InsertEndTransaction”并点击新增事务,表小该事务结束。点击总uCreateNewAction>,新增action“del”并选择一条条目点击悔"InsertStartTransaction"输入事务名称“删除”后,点击删除。系统提一创、一一、.爪删除成功厉点击’“InsertEndTransaction”并点击新增事务,表不该事务结束。点击空uCreateNewAction>,新增action“search”并进入查询利用页面,在一体化检索。点击阳uInsertStartTransaction输入事务名称“一体化查询”后,点击新增。系统提示新增成功后点击剣"InsertEndTransaction"并点击新增事务,表示该爭务结朿。点击总"CreateNewAction”新增action“exit"。点击金"InsertStartTransaction"输入事务名称“注销”后,点击注销。系统返[创丨"亠-亠一、亠-■亠冋登录首贝后点击—uInsertEndTransaction"并点击新增事务,表不该事务结束。点击13"StopRecording”结束脚本录制。等待脚本生成,以及自动关联选项。
自动关联如有JSessionlD需H动关联,如无则在脚本调试时手动关联。脚本调试将上述脚本的文件打开,仅保昭如下请求:◊访问首页的web_url请求;◊包含用户登录信息的web_submit_data请求;◊包含新增信息的web_submit_data请求;◊包含修改信息的web_submit_data请求;◊包含删除信息的web_submit_data请求;◊包含查询信息的web_submit_data请求;◊Logout的web_url请求。将登录用户名以file形式参数化,登录名行数应大于并发用户数;如系统包含JSessionlD验证,需要在访问首页的web_url请求前加上web_reg_save_param_ex(,,ParamName=JSIDH/,,LB=JSESSIONID="/"RB=;Path=/archive/;HttpOnly",SEARCH_FILTERS,,,Scope=HEADERS,,/LAST);之后将录制脚本中的jsessionid替换为{JSID}将修改和删除步骤中对象的id参数化替换为指定的预制测试数据,确保每轮
脚本执行性能测试打开Controller工具,在NewScenario窗口中NewScenarioSelectScenarioTypeeManualScenarioManageyourloadtestbyspecifyingthenumberofvirtualuserstorun厂UsethePercentageModetodistributetheVusersamongthescripts「Goal-OrientedScenarioAllowLoadRunnerControllertocreateascenariobasedonthegoalsyouspecifySelectthescript(s)youwouldliketouseinyourseenarioAvailableScriptsScriptsinScenarioSystemorUnitTests••网cesoa••网d2yg3jio.Oxu••園DAG_3-grDAS.5denglu-£T•“网DTXZ网DZDAYJJSXT••伍TndInain0ShowalstartupOKCancelHelpI按照如图式样配置,并选择止确的测试脚本,如有多个请依次添加至"ScriptsinScenario"列表,点击OK按钮。
圈X场◎ScheduleName:[Schedule1Scheduleby:QScenario「GroupRunMode:「ReaI-worldscheduleaBasicscheduleGlobalSchedule"乡義鲁•I鞠|Total:10VusersActionPropertiesInitiallzeInitiallzeeachVuserjustbeforeitrunsStartVusersStartallVuserssimultangouslyDurationRunfor00:05:00(HH:W:SS)StopVusersStopallVuserssimultanaously♦执行压力测试,将GlobalSchedule如图配置,双击Duration行将持续时间改为5分钟。QuantityLoadGenerators10localhost♦Quantity列配置脚木执行虚拟用八数♦LoadGenerators列配置脚本执行负载机IP。♦点击功能键F5执行场景。♦场景执行完毕后,点击迅"AnalysisResult"按钮输出测试结果。
负载测试打开Controller工具,在NewScenario窗口中按照如图式样配置,并选择正确的测试脚本,如有多个请依次添加至"ScriptsinScenario"列表,点击OK按钮。
圈X场◎ScheduleName:[Schedule1Scheduleby:QScenario「GroupRunMode:「ReaI-worldscheduleaBasicscheduleGlobalSchedule"乡義鲁•I鞠|Total:10VusersActionPropertiesInitiallzeInitiallzeeachVuserjustbeforeitrunsStartVusersStartallVuserssimultangouslyDurationRunfor00:05:00(HH:W:SS)StopVusersStopallVuserssimultanaously♦执行压力测试,将GlobalSchedule如图配置,双击Duration行将持续时间改为5分钟。QuantityLoadGenerators10localhost♦Quantity列配置脚木执行虚拟用八数♦LoadGenerators列配置脚本执行负载机IP。♦点击功能键F5执行场景。♦场景执行完毕后,点击迅"AnalysisResult"按钮输出测试结果。
压力测试♦打开Controller工具,在NewScenario窗口中♦按照如图式样配置,并选择止确的测试脚本,如有多个请依次添加至"ScriptsinScenario”列表,点击OK按钮。♦在ScenarioGoal对话框中点击孕Edi沪佃呼o&L.按钮,弹出“EditScenarioGoal”对话框;
GoalProfieName:HitsperSecond100DefineScenarioGoalGoalType:|HitsperSecondReachgoalof(100.00UsingaminimumofScenarioSettingsLoadBehaviorRunTimeRunfor000:30:00EditScenarioGoalRenameIDeleteINewSeen前oStartTimaJhitspersecondandamaximumof|150斜Vusers(HHH:MM:SS)afterthetargethasbeenIftargetcannotbereachedCStopseenarioandsaveresults<♦Continuescenariowithoutreachinggoalpuooas」BdssLoadPreview[7ReceivenotificationDonotchangerecordedthinktime00:0500:1000:1500:2000:2500:30ElapsedTimeOKCancel|Help♦点击右上驯」按钮,添加一个新的目标方案,并修改配置如下图:♦“GoalType”选择“TransactionsperSecond”,“TransactionName”选择测试的目标事务名称♦"Reachgoalof"设置不小于1的正数,表示至少每秒须有n个事务成功♦“Usingaminimumof...”两个Vusers用户数量依据项H标准进行修改♦以上三项需经过事先评审确认测试指标
♦配置完成后,点击I°K|♦点击功能键F5执行场景。♦场景执行完毕后,点击唱"AnalysisResult"按钮输出测试结果。♦保存测试结果。稳定性测试打开Controller工具,在NewScenario窗口中NewScenarioSelectSeen“ioTypeGManualScenarioManageyourloadtestbyspecifyingthenumberofvirtualusersto『unUsethePercentageModetodistributetheVusersamongthescripts「Goal-OrientedScenarioAllowLoadRunne『ControllertocreateascenariobasedonthegoalsyouspecifySelectthescript(s)youwouldliketouseinyourscenarioaLoadRunScripts厂SystemorUnitTestsAvailableScriptsScriptsinScenariocesoa••网d2yg3jio.0xu•“网DAG.3denglu•”网DAS.5••園••网DTXZ网DZDAYJJSXT••伍TndInainFzShowstartupOKCancelHelpI按照如图式样呢置,并选择正确的测试脚本,如有多个请依次添加至"ScriptsinScenario"列表,点击OK按钮。ScenarioSchedule圈X场◎ScheduleName:[Schedule1Scheduleby:QScenario「GroupRunMode:厂ReaI-worldscheduleaBasicschedule
GlobalSchedule乡礙••丨鞠|Total:10VusersActionPropertiesInitiallzeInitiallzeeachVuserjustbeforeitrunsStartVusersStartallVuserssimultangouslyDurationRunfor00:05:00(HH:W:SS)StopVusersStopallVuserssimultanaously♦执行压力测试,将GlobalSchedule如图配置,双击Duration行将持续时间依据项日要求改为不低于8小时的持续时间。QuantityLoadGenerators10localhost♦Quantity列配置脚木执行虚拟用八数♦LoadGenerators列配置脚本执行负载机IP。♦点击功能键F5执行场景。♦场景执行完毕后,点击迅"AnalysisResult"按钮输出测试结果。♦保存测试结果。性能指针XX公司内部Web项目性能指针如下:1、并发用户数40人;2、并发操作响应时间以90Percent的值为标准,依据3・5・8原则判定,3秒内为优秀,3~5秒为较好,5~8秒为一般,8秒以上为需改进;3、响应时间std低于14、稳定性测试Windows服务器CPU占用率不高于80%,最大峰值不超过85%,Linux服务器CPU占用率不高于40%,最大峰值不超过45%。有项H需规性能要求的项H依据项H需规文档标准判定。附加说明>本文档依据Loadrunnerl2.02版本编写,适应Loadrunnerll.00以上版本。部分
界面配图存在差异,自行理解或山测试部进行技术支持。>文档用于指导进行性能脚本录制、调试及执行。脚本分析请提交至31582112@qq.com>邮件内注明项目名称、项目编号、测试方法及相关细节,脚本为测试分析打包后通过附件形式发送。确认示点击OK关闭RecordingOptions窗口。StartRecording开始剥側脚本打开首页后在登录页而切换action至"Action”项Recording...(315)00:01:15■八QQQ0Action▼枕隔舟Q住II▼点击忙*1uInsertStartTransaction”输入事务名称“登录”后,在系统页1何输入用户名与密码,并点击背录。如登录页而存在验证码需让开发人员协助关闭验证码。系统进入台账页面后点击』"InsertEndTransaction”并点击登录爭务,表示该爭务结束。'
您可能关注的文档
- 最新燃气设计规范实施手册城镇燃气设计、施工及安装、
- 美的集团2009届校园招聘方案实施手册
- xx运营商-容灾项目DataGuard实施手册.doc
- UCS系统实施手册
- 山西金晖煤焦化工—VIS实施手册.doc
- NC5.6房地产行业产品-商业管理实施手册.doc
- 总部员工行为要求实施手册.doc
- IBMV系统存储hyperswap实施手册(英文)
- 人力资本分析实施手册
- 中国电信全面预算管理操作实施手册-template-重要备用.doc
- 库存管理流程实施手册.ppt
- 销售公司与分公司成品库存管理流程实施手册.ppt
- 最新土地开发整理项目预算定额标准实施手册.pdf
- 公路桥涵施工技术规范实施手册.doc
- 异业联盟实施手册范本.doc
- 餐饮企业6T实施手册.doc
- 北京航空航天大学科协 消防安全四个能力建设试点实施手册.doc
- ISO14001:2004咨询实务实施手册2.doc