




已阅读5页,还剩8页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
UDMS性能压力测试方案UDMS性能压力测试方案版本控制版本日期作者备注v1.02011-9-9初稿目 录一、概述41.1 项目背景和测试目的41.2 被测系统介绍41.3 测试可接收条件4二、测试需求5三、测试方法53.1 测试方法53.2 测试案例63.3 测试流程63.4 数据文件准备6四、测试环境74.1网络拓扑图74.2环境配置7五、测试实施85.1试资源与进度8附录:测试工具原理9第13页一、概述1.1 项目背景和测试目的为保障UDMS后续示范应用项目能够顺利实施,UDMS项目组希望在示范应用项目正式实施前了目前的UDMS性能是否可行,即了解示范应用项目技术的可行性。另外,通过测试,还希望了解使用不同技术之间实现的差异。1.2 被测系统介绍本次被测系统是目前已完成的UDMS1.1系统,系统逻辑结构如下图:系统逻辑结构图本次测试主要测试数据的索引性能及并发数据搜索性能。1.3 测试可接收条件1、 数据索引性能每次测试均需成功;2、 数据并发搜索性能根据并发用户量决定,见后续描述;每次测试,以上条件必须同时满足,方视为本次测试通过。二、测试需求本次测试的需求包括:项目计划文档性能需求规格说明书 系统架构设计文档三、测试方法3.1 测试方法测试过程采用自动测试工具进行。使用HP公司的测试产品:LoadRunner。对数据索引性能测试不使用上述工具。1. 测试UDMS系统数据索引性能:对UDMS系统进行数据导入测试,分别导入1万、10万,100万,1000万条文本及多媒体数据,之后记录每次导入的时间。2. 整个系统能够支持多少用户同时访问模拟多个虚拟用户,同时向UDMS发送搜索请求,之后记录每个虚拟用户的响应时间。3、不同技术间实现的差异如有条件,可测试示范应用系统使用不同数据库平台之间的性能差异。该部分测试视实际情况决定是否需要测试。3.2 测试案例测试目的虚拟用户类型Case No.并发用户数数据量测试数据索引Non-GUI Vuser00111万002110万0031100万00411000万整个系统能够支持多少用户同时访问Non-GUI Vuser0051100万00610100万007100100万0081000100万Non-GUI Vuser00811000万010101000万0111001000万01210001000万3.3 测试流程正式测试过程如下: 确认被测环境正常; 确认测试环境设置; 开始测试; 存储测试结果; 系统调试; 应用调试; 环境维护;3.4 数据文件准备数据文件名称包含内容说明数据量文本数据标注完后的文本GBK格式纯文本1000万多媒体数据带标注文本及媒体文件包括声音、图像及视频1000万四、测试环境4.1网络拓扑图测试网络拓扑图4.2环境配置类型配置软件被测系统服务器DELL POWEREDGE210CPU:INTEL XEON E31220 3.1GHZDISK:2TMEMORY:8G测试系统测试机器及控制台CPU:INTEL CORE I5-2410M 2.30HZMEMORY:2G网络交换机千兆网络五、测试实施5.1试资源与进度项目阶段任务分解任务内容完成标准责任人资源与时间项目启动设立项目项目定义,规划项目运作模式,编制项目计划,组建项目班子与实施队伍输出项目计划测试经理0.5人天测试计划和测试设计测试需求调研明确测试需求、测试目标、界定测试范围、任务和具体内容双方就测试需求达成共识测试人员0.5人天制定测试方案细化测试方案,定义测试范围,并定义各项测试活动和步骤,具体安排测试实施过程及测试进度输出测试方案(初稿)测试经理2人天测试执行预测试证明测试脚本可用,证明测试流程可用证明测试环境配置合理证明测试数据准备充分按照预期可接收条件开发及测试人员1天系统调优使系统运行在最佳状态运行500或1000并发用户场景,测试经理和项目经理直到认为测试停止项目负责人/开发人员/测试人员/测试经理2天性能测试根据测试案例测试按照预期可接收条件测试人员1天压力测试测试系统究竟能够承受的业务量按照预期可接收条件,系统已经不能承受测试人员1天测试评估总结总结输出项目报告、相关文档归档,安排后续工作输出项目报告测试人员2天测试组织结构图附录:测试工具原理Mercury Interactive 公司的客户机/服务器系统的压力测试工具LoadRunner,其工作原理为:通过一个中心控制点,在一个或几个主机上同时模拟成百上千的实际用户的操作,从而生成一致的、可测量的及可重复的系统负载,并记录特定交易操作的响应时间。概要地说:首先录制应用程序的操作过程,测试工具会自动生成可执行的脚本,该脚本运行起来,从服务器端看,就如同一个实际的用户在进行操作,我们称为虚拟用户。然后,通过中心控制点(Controller)设置测试场景,控制许多个虚拟用户在多台Agent机器上同时运行,监控运行状态,收集响应时间等性能数据。l 使用虚拟用户(Vuser)替代实际用户每个模拟的用户即为一个虚拟用户,其实就是一个运行的测试脚本。LoadRunner在PC上主要有两种Vuser:非图形用户界面的虚拟用户(Non-GUI Vuser)和图形用户界面虚拟用户(GUI Vuser)。Non-GUI Vuser是直接通过API调用和Web/Application/DB服务器进行交互的,它的脚本是直接向服务器提交请求的类C语言程序。多个Non-GUI Vuser可运行于一台主机上。Vuser可通过Virtual User Generator来录制生成,在录制脚本中可以标明某一活动(transaction)的开始和结束点,用于具体度量这一活动的响应时间及性能,还可以在某一操作之前定义集结点(rendezvous),用于测试这一操作的多用户并发。GUI Vuser模拟实际用户运行应用程序进行操作的情况,它的脚本记录了客户机上所有的界面操作。GUI Vuser可通过Mercury Interactive 公司的功能测试工具WinRunner来录制生成。由于本次压力测试的目的是检验服务器对压力的承载能力,因此建议通过在一台主机上运行多个Non-GUI Vuser来模拟多用户的活动进行压力测试。l 测试脚本的参数化测试脚本反映的是录制时输入的数据的情况。但由于录制操作可能引起原输入数据状态的变化,因此要修改测试脚本中的输入数据及与其相关的数据;而且为了更准确地模拟真实系统的运作,输入的数据及与其相关的数据就必须参数化,并且为该参数建立一个包含所有数据的参数文件。这样当模拟多用户进行压力测试时,就可控制每个虚拟用户使用参数文件中的不同数据。通过中心控制点(Controller)管理虚拟用户在中心控制点,定制测试场景,即将要在测试会话中发生的事件。定制包括模拟的用户个数、模拟用户所在的主机、模拟用户的动作等。在中心控制点控制场景的运行,管理所有虚拟用户的活动,监控虚拟用户的状态,也可以无人照料地运行。场景执行完后,可通过Controller的性能分析图形和报表对结果数据进行分析。代理程序必须安装在参与测试的每一台主机上,当场景开始运行,代理程序负责Controller与主机之间的通讯。l 使用自动生成的图表和报表分析测试结果在每个测试场景运行完后,Controller自动收集服务器、网络及客户端的性能数据,并以图形和报表的形式显示。其中包括服务器响应Vuser以及transaction 提交的请求和任务的时间;在运行期间的基于活动Vuser数目的transaction性能时间;服务器磁盘I/O、CPU使用情况,网络延迟等数据。测试方法及步骤1、建立虚拟用户(生成测试脚本)在LoadRunner的Virtual User Generator中录制测试脚本,建立虚拟用户,一般一个业务操作录制成一个测试脚本,步骤如下:1) 根据应用软件的体系结构、中间件、数据库或客户端与服务器之间的协议,选择对应的虚拟用户类型,如:WEB、Oracle、Tuxedo、WinSocket等等;2) 指定要录制的可执行程序,开始录制;3) 在Vuser init section 中记录登录应用系统的过程;4) 在 Actions section中记录功能操作过程,适当加入事务(transaction)的开始与结束点(事务也可在脚本生成后,直接在脚本中加入)。当需要记录压力测试过程中某一操作的响应时间时,则在执行这一操作前定义事务的开始点,并给这一事务命名,在操作结束后定义该事务的结束点;5) 在Vuser end section中记录退出系统的过程;6) 回放测试脚本,检验测试脚本执行的正确性(有可能要恢复录制以前的数据状态,或进行必要的参数化)。1、 试脚本的参数化测试脚本反映的是录制时输入的数据的情况,但为了更准确地模拟真实系统的运作,如模拟不同用户的登录,不同用户查询,有些输入的数据必须参数化,并且为该参数建立一个包含所有可能的数据的参数文件。这样当模拟多用户进行压力测试时,就可控制每个虚拟用户使用参数文件中的不同数据。 参数的选择、参数文件的定制具体根据应用软件的实际情况而定,但要保证录制的脚本能够顺利地执行回放,且完成相应的业务功能。2、 定制压力测试场景在LoadRunner的Controller中,定制压力测试场景,也就是模拟一个多用户并发的情况,包括:运行虚拟用户的测试主机、在测试机上运行的虚拟用户数、虚拟用户运行的测试脚本、每个虚拟用户的循环次数等等。1) 虚拟用户并发数:定义执行某一测试脚本的虚拟用户并发数,则虚拟用户并发总数为各脚本虚拟用户并发数之和;由于在运行测试脚本时,忽略了Think Time,因此一个虚拟用户的操作是非常连贯的,其强度远远大于一个实际用户的操作强度;另外,为了测试引起系统性能急剧下降的拐点和引起系统崩溃的崩溃点,并发的虚拟用户数需逐渐增加,每次增加的数量可视测试的具体情况而定。2) 测试主机:选择运行某一测试脚本的测试主机。3) 虚拟用户执行的脚本:选择虚拟用户执行的测试脚本,即完成某一业务功能的测试脚本。4) Iteration Count:虚拟用户运行测试脚本Actions section部分的循环次数,增加循环次数是为了保证在某一稍长的时间段内有一个稳定的负载,这样统计的结果才比较准确。需要注意的是,每台测试机上所支持的虚拟用户数,与测试机的配置和录制的应用程序的大小有关。每台测试机上运行的虚拟用户数不能太多,因为如果太多的话,性能瓶颈将会出现在客户端,那么测出的结果将毫无意义。3、 运行压力测试场景在LoadRunner的Controller中,运行压力测试场景,就可以控制测试机上的所有虚拟用户并发进行相应的操作。步骤为:1) 启动测试机的Remote Command Launcher;2) 在Controller中使测试机处于“连接”状态;3) 在Controller中,对所有虚拟用户发出初始化(initialize)命令,测试主机的RCL启动Agent,并将虚拟用户初始化,执行测试脚本中Vuser init section部分,使之登录系统;4) 在Controller中,对所有虚拟用户发出运行(run)命令,通过测试主机的Agent运行各虚拟用户,执行测试脚本中的Actions section部分,在Controller端监控虚拟用户的状态及执行结果;5) 每个虚拟用户按指定的循环次数执行测试脚本中的Actions section部分,然后执行Vuser end section部分,退出应用系统;6) 当每一个虚拟用户运行完成后,整个测试场景运行结束。在压力测试场景执行过程中,Controller会自动收集服务器、网络及客户端的性能数据,以及各事务的响应时间等。4、 监控系统性能在测试场景运行过程中,我们需要监控:1) 监控运行虚拟用户的客户端的资源使用情况,使用Windows的性能监视器监控客户端的CPU、Memory等资源使用情况,以防止性能瓶颈出现在客户端;另外,可以在进行压力测试的同时,在另外的客户端上运行应用程序,也就是在系统负载较大时从最终客户的角度再进行相应功能的确认,并测试端到端的响应时间,也可将该响应时间与压力测试的响应时间进行比较,若结果差别不大,也可验证压力测试结果的可信性。 2) 监控数据库服务器、WEB服务器资源的使用情况,可以使用Quest Software的I/Watch,或CA UniCenter和IBM Tivoli等专门的系统监控工具,来监控服务器端的CPU、Memory、Disk、Process、Network等资源使用情况,以便在压力测试时,判断性能瓶颈所在。3) 监控数据库资源的使用情况,可以使用专门针对ORACLE的数据库监控工具,如, Quest Software的Spotlight、Space Manager、SQLab Xpert等监控磁盘空间的分配,磁盘I/O的竞争,内存区高速缓存的命中率,索引、锁等机制的运用以及性能不佳的SQL语句等。对这些资源情况进行分析,并找到性能瓶颈。5、 分析测试结果在Controller的Analysis中,分析并打印其中的性能报表,作为测试报告的附件:GraphPercentile:事务百分比对应的响应时间的图形,该图说明百分之几的事务是在多少响应
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 职业病培训大纲
- 少儿无人机课件
- 智慧生态农业谷项目解决方案
- 非煤矿山安全生产知识题库-单选题
- 浓密机培训课件
- 无痛胃肠镜检查及护理
- 煤矿职工培训
- 营业厅服务礼仪培训
- 重度胎膜早剥护理
- 计划调度具备哪些能力培训
- 2025年湖北省中考化学试卷真题(含答案解析)
- 2025至2030中国插针机行业发展趋势分析与未来投资战略咨询研究报告
- 2025年江西省中考历史试卷(含答案)
- 2025年四川省宜宾市中考数学真题含答案
- 食品销售公司食品安全管理制度
- 测量行业工作管理制度
- 2022年江西省投资集团有限公司校园招聘笔试模拟试题及答案解析
- 发证机关所在地区代码表
- 征地补偿数据库建设技术方案
- 高级财务管理教案第八章 财务危机管理
- 北京市中小学教师岗位考核登记表(表样)
评论
0/150
提交评论