性能测试技术(一)方案课件.ppt

上传人(卖家):三亚风情 文档编号:2337117 上传时间:2022-04-05 格式:PPT 页数:53 大小:6.16MB
下载 相关 举报
性能测试技术(一)方案课件.ppt_第1页
第1页 / 共53页
性能测试技术(一)方案课件.ppt_第2页
第2页 / 共53页
性能测试技术(一)方案课件.ppt_第3页
第3页 / 共53页
性能测试技术(一)方案课件.ppt_第4页
第4页 / 共53页
性能测试技术(一)方案课件.ppt_第5页
第5页 / 共53页
点击查看更多>>
资源描述

1、北京中油瑞飞信息技术有限责任公司 性能测试技术简介 -基础篇PMO管理部课程内容 性能性能测试培训测试培训l 软件性能概念l 性能测试目的l 性能测试类型l 性能测试策略l 性能测试流程目录 软件性能与性能测试性能测试目的性能测试类型性能测试策略性能测试的流程性能测试人员组织结构性能测试概念 Contents Contents软件性能软件性能与性能测试与性能测试不同角度不同角度性能的认识性能的认识性能测试性能测试常用术语常用术语软件性能与性能测试软件性能 系统的性能是个很大的概念,覆盖面非常广泛,对一个软件系统而言,包括执行效率、资源占用、稳定性、安全性、兼容性、可扩展性、可靠性等等。性能测试

2、 性能测试主要是通过自动化工具模拟多种正常、峰值以及异常负载条件来对系统进行操作,以获得系统各项性能指标的一种测试。即对被测系统按照一定策略施加压力,获取系统响应时间、TPS、吞吐量、资源利用率等性能指标,以期保证系统的性能。 不同角度对性能测试的认识 用户角度用户角度系统管理员角度系统管理员角度开发人员角度开发人员角度软件对用户操作的响应时间,业务可用度,软件对用户操作的响应时间,业务可用度,或者系统的服务水平如何或者系统的服务水平如何并发压力,服务器端资源使用情况,并发压力,服务器端资源使用情况,是否存在性能瓶颈,系统可扩展性如何是否存在性能瓶颈,系统可扩展性如何架构设计是否合理,数据库设

3、计是否存在问题,代码是否需要优化如何通过架构设计是否合理,数据库设计是否存在问题,代码是否需要优化如何通过调整设计和代码实现,或如何通过调整系统设置提高软件的性能表现调整设计和代码实现,或如何通过调整系统设置提高软件的性能表现性能测试常用术语 TPSTPS与与HPSHPS资源利用率资源利用率命名用户数命名用户数在线用户数在线用户数吞吐量吞吐量交易成功率响应时间响应时间PerformanceTestWeb Service Web(HTTP/HTML)性能测试指标命名用户数命名用户数是指在应用系统中注册的所有系统用户。该用户数取决于系统应用范围和业务范围,可以通过统计应用系统数据库中用户登记表取得

4、。在线用户数在线用户数是指同时登录应用系统的用户数量。该数据可通过检查系统应用与数据库连接取得。对于已投产系统,该数量一般通过系统跟踪监控获取。新投产系统通过经验值估算。性能测试指标并发用户数(最佳、最大)并发用户数是指在某一给定时间内,某个特定点上进行会话操作的用户数。响应时间响应时间指的是从客户端发起一个请求开始,到客户端接收到从服务器端返回的响应结束,这个过程所耗费的时间。性能测试指标交易成功率交易成功率指的是一段时间内成功的交易数在总交易数中所占的比例,金融行业应用系统一般要求在99%以上。吞吐量吞吐量是指单位时间内系统处理的客户请求的数量,直接体现应用系统的性能承载能力。性能测试指标

5、TPS:Transaction per secondTPS是估算应用系统性能的重要依据;TPS是指应用系统每秒钟处理完成的交易数量;一般而言,评价系统性能均以每秒完成的技术交易的数量来衡量;系统整体处理能力取决于处理能力最低模块的TPS值。交易分为业务层面和技术层面两种定义。业务层面交易是指完成一次完整的业务操作,例如进行一次取款、查询操作。技术层面的交易是指进行一次应用程序至应用程序、或者应用程序至数据库的系统操作。一般的一笔业务交易由多笔技术交易组成,根据业务交易的复杂度和系统应用架构的不同,其比例大致为1:2-1:10。资源利用率资源利用率是指系统在负载运行期间,数据库服务器、应用服务器

6、、web服务器的CPU、内存、硬盘、外置存储,网络带宽的使用率。据经验,低于20%的利用率为资源空闲,20%-60%的使用率为资源使用稳定,60%-80%的使用率表示资源使用饱和,超过80%的资源使用率必须尽快进行资源调整与优化。其他指标在性能测试过程中还有大量与软件产品或硬件设备相关的测算指标;随着性能测试的深入将逐渐积累汇总这些指标。性能测试指标 性能测试目的软件性能与性能测试性能测试类型性能测试策略性能测试的流程性能测试人员组织结构目录性能测试目的 目的目的评估评估系统系统目标目标寻找寻找瓶颈瓶颈验证验证稳定稳定系统系统调优调优预测预测未来未来优化优化性能性能为什么进行为什么进行性能测试

7、性能测试性能测性能测试的目标试的目标为什么进行性能测试 优化性能最小化成本最小化风险交付高质量的系统性能测试的目标 寻找瓶颈,优化性能预测系统未来性能,可扩展性评价系统当前性能性能测试的目标 评价当前系统性能评价当前系统性能1 寻找瓶颈,优化性能寻找瓶颈,优化性能2系统刚上线,处于试运行,用户需要确定当前系统是否满足验收要求系统已经运行一段时间,如何保证能够一直具有良好的运行性能 预测系统未来性能,可扩展性预测系统未来性能,可扩展性3用户提出业务操作响应时间长,如何定位问题,调整性能系统运行一段时间后,速度变慢,如何寻找瓶颈,进而优化性能。系统用户数增加时,当前系统是否能满足需求,如果不能,需

8、要进行哪些调整?增加应用服务器?提高数据库服务器的配置?或是需要对代码进行调整?目录 性能测试类型性能测试目的软件性能与性能测试性能测试策略性能测试的流程性能测试人员组织结构性能测试类型 基本类型基本类型性能测试类型单交易基准测试单交易基准测试单交易负载测试单交易负载测试混合交易测试混合交易测试稳定性测试稳定性测试高可用性测试高可用性测试异常测试异常测试批量程序测试批量程序测试流控超时测试流控超时测试参数调优测试参数调优测试负载测试负载测试压力测试压力测试大数据量测试大数据量测试疲劳强度测试疲劳强度测试失效恢复测试失效恢复测试实战类型实战类型性能测试类型负载测试(Load Test)负载测试:

9、主要用于描述常规的性能测试,通过模拟生产运行的业务压力和使用场景组合来测试系统的性能是否满足生产要求。通俗的说,这种测试方法就是要在特定的运行条件下验证系统的能力状况。压力测试(Stress Test)压力测试:对系统不断施加压力的测试,是通过确定一个系统的瓶颈或者不能接收用户请求的性能点,来获得系统能提供的最大的服务级别的测试。通俗地讲,压力测试是为了发现在什么条件下应用程序的性能会变得不可接受。性能测试类型疲劳强度测试通常是采用系统稳定运行情况下能够支持的最大并发用户数或者日常运行用户数,持续执行一段时间业务,通过综合分析交易执行指标和资源监控指标来确定系统处理最大工作量强度性能的过程。疲

10、劳强度测试可以反映出系统的性能问题,例如内存泄漏等。目标:通过综合分析交易执行指标和资源监控指标来测试系统长时间无故障稳定运行的能力性能测试类型大数据量测试(Volume Test)大数据量测试包括独立的数据量测试和综合数据量测试。独立的数据量测试指针对某些系统存储、传输、统计、查询等业务进行的大数据量测试。综合数据量测试指系统在具备一定数据量时,在负载压力测试下,考查业务是否能够正常运行的测试。目标:测试数据量较大时系统的性能状况。 失效恢复测试失效恢复测试是针对有冗余备份或负载均衡的系统来说,检验如果系统局部发生故障,系统灾备措施是否可以正常启动,用户是否可以继续使用。目标:通过实施失效恢

11、复测试,评估系统的健壮性和可恢复性。实战测试类型 单交易在系统无压力时,由基准测试数量的操作员连续执行100次完整操作,获得平均交易响应时间单交易在系统无压力时,由5个虚拟用户连续执行10分钟操作,获得平均交易响应时间;根据混合场景设计,依据单交易负载测试的结果,采用梯度发送的方式,直到出现性能拐点,获得混合交易系统处理最优时的用户数及响应时间 单交易单交易基准测试基准测试 单交易单交易负载测试负载测试 混合交混合交易测试易测试实战测试类型 在一定负载压力下,对系统长时间加压考察系统是否能够长时间稳定运行利用系统自身特性,验证并发压力下其自身特性的有效性,如(负载均衡、HA等)在高并发的压力下

12、,对系统模拟各种异常(服务异常、网络异常、主机异常等),验证系统在异常状态下的处理能力 稳定稳定性测试性测试 高可用高可用性测试性测试 异常测试异常测试实战测试类型 对系统跑批程序的执行,获取其执行效率、执行时间及资源使用等情况利用系统自身流控机制,设置流控触发条件,模拟超出该条件时系统的状态在正常压力下,通过调整系统关键参数,验证不同参数下系统性能情况,优化系统性能 批量程批量程序测试序测试 流控超流控超时测试时测试 参数调参数调优测试优测试目录 性能测试策略性能测试目的软件性能与性能测试性能测试类型性能测试的流程性能测试人员组织结构性能测试策略性能测试策略一般从需求设计阶段就开始讨论如何制

13、定了,它决定着性能测试工作将要投入多少资源、什么时间开始实施等后继工作的安排。其制定的主要依据是“软件自身特点”和“用户对性能的关注程度”两个因素,其中软件的自身特点起决定作用。软件按照用途的不同可以分为两大类:系统类软件和应用类软件。系统类软件通常对性能要求比较高,因此性能测试应该尽早介入。应用类软件分为特殊类应用和一般类应用,特殊类应用主要指银行、电信、电力、保险、医疗、安全等领域类的软件,这类软件使用比较频繁,用户较多,一般也要较早进行性能测试;一般类应用主要指一些普通应用,例如办公自动化软件、MIS系统等。 28282828性能测试策略 Contents Contents应用在客户应用

14、在客户端的性能测试端的性能测试应用在网络应用在网络的性能测试的性能测试应用在服务器应用在服务器端的性能测试端的性能测试应用在客户端的性能测试应用在客户端的性能测试负载测试负载测试压力测试压力测试大数据量测试大数据量测试疲劳强度测试疲劳强度测试测试系统在某一特定条件下的性能状况,以验证是否满足当前生产环境的需求。通过逐步增加系统负载,获得系统的最大处理能力及相关的性能指标大数据量测试包括独立的数据量测试和综合数据量测试通常是采用系统稳定运行情况下能够支持的最大并发用户数或者日常运行用户数,持续执行一段时间业务,通过综合分析交易执行指标和资源监控指标来确定系统处理最大工作量强度性能的过程. .应用

15、在客户端的性能测试测试机制通过在一台或几台PC机上模拟成百或上千的虚拟用户同时执行业务的情景,对应用程序进行测试,通过可重复的、真实的测试能够彻底地度量应用的性能,确定问题所在。工程项目实践证明,其测试结果与实际情况完全符合。应用在客户端的性能测试测试机制 实现:模拟大量并发用户,测试环境一般包括主控台、代理机以及被测服务器,各部分采用网络连接。测试工具使用的基本步骤 录制业务流程,形成测试脚本 优化调试脚本 执行测试场景应用网络的性能测试应用网络故障分析测试网络带宽、延时、负载和TCP端口的变化如何影响用户的响应时间网络应用性能监控应用网络故障分析通过测试优化性能预测系统响应时间确定网络带宽

16、需求定位应用程序和网络故障应用在服务器端的性能测试服务器端面临的风险 一般系统具有多台服务器,有不同服务器类型, 管理起来很困难 服务器的性能问题很难诊断 没有发现的简单问题可能引起许多用户的巨大问题测试关键点资源的占用情况 数据库性能 故障报警应用在服务器端的性能测试操作系操作系统监控统监控数据库数据库的监控的监控中间件中间件的监控的监控应用在服务器端的性能测试应用在服务器端的性能测试监控内容目录 性能测试的流程性能测试目的软件性能与性能测试性能测试策略性能测试类型性能测试人员组织结构测试流程 项目测试总结技术性文档专家评审准备执行报告总结其他接受测试环境,测试方案测试案例、测试数据测试脚本

17、、相关工具案例执行测试监控调优与回归收集/分析测试结果阶段测试报告项目测试报告信息调研(测试目标)业务分析(测试模型)需求分析计划制定(测试时间)工作日报工作周报评审记录报文格式整理某国有大型金融机构测试中心非功能测试流程图某国有大型金融机构测试中心非功能测试流程图测试流程任务接受测试目标 测试目标一般包含应用系统要达到的性能指标。系统处理的最大并发用户数;系统运行高峰时期,响应时间小于X秒;TPS不小于多少X;服务器资源利用率不超过80%;运行7*24小时,无明显的内存泄漏现象(根据系统要求)。测试模型根据项目提供的业务模型进行分析提炼、抽取出所测的测试模型。测试流程准备阶段测试环境测试环境

18、包含数据库服务器、应用服务器、web服务器,Controller机器、压力发生器的硬件配置与软件配置。用途用途主机主机&型号型号资源配置资源配置软件版本软件版本数量数量AP服务器IBM .2C 4GWebLogic 8.12DB服务器HP .4C 8GOracle 9.2.01ControllerPC server2C 4GLR 8.11GeneratorPC Server2C 4G LR 8.12测试流程执行阶段执行阶段输出备注:备注:过程记录过程记录:每一次测试都要进行记录,哪怕是调整了细微的参数结果收集结果收集:测试结果要按照一定命名格式保存,以备分析所用 LR Scenario LR

19、Scenario * *.lrs.lrs形式形式 HtmlHtml形式和形式和LR Analysis Session Files LR Analysis Session Files 形式形式测试场景测试场景测试采集数据测试采集数据 LR Vuser Scripts LR Vuser Scripts * *.usr.usr形式形式测试脚本测试脚本目录 性能测试人员组织结构性能测试目的软件性能与性能测试性能测试策略性能测试类型性能测试的流程性能测试组织结构图 环境工程师环境工程师业务人员业务人员业务业务人员人员性能测试组长性能测试组长性能测试性能测试工程师工程师性能测试性能测试工程师工程师硬件硬件

20、工程师工程师系统系统管理员管理员业务协调人业务组技术组环境组应用应用管理员管理员业务业务专家专家技术协调人环境协调人性能测试管理组性能测试管理组性能测试组织结构图 负责组建技术测试小组; 负责测试任务实施计划的管理与实施过程管理; 负责技术测试任务各关键成果的评审组织工作; 负责测试任务完成情况的汇报,以及与相关联组织 的沟通与协调; 负责实施过程的风险评估、风险防范与风险处理。技术测试经理性能测试组织结构图 负责技术测试任务需求调研与需求分析工作; 负责设计技术测试策略,以及技术测试方案的定制; 负责技术测试过程关键成果物的初步审核工作; 负责技术测试结果数据的汇总,以及问题的定位与分析;

21、负责技术测试报告的撰写工作; 负责技术测试过程中疑难问题的处理与解决;技术测试分析师性能测试组织结构图 负责测试脚本录制和调试; 负责测试数据的检查和确认; 负责执行过程记录; 负责测试结果数据的整理汇总; 负责测试实施中应用系统的口令管理; 负责测试脚本、文档等重要资源的版本管理; 负责应用版本更换、配置修改的记录和跟踪; 负责测试监控工具的部署和监控数据收集整理。技术测试工程师性能测试组织结构图技术测试工作过程中涉及应用系统业务的分析、基础设施测试问题分析定位、基础软件性能诊断与分析,以及在应用系统调优的过程中涉及程序的修改与调试等工作由支持人员负责。支持人员不必全程测试技术测试工作,但须

22、及时协助测试实施人员解决技术测试过程中相关领域的疑难问题。技术支持人员性能测试组织结构图 调研阶段,根据需要,业务人员参与典型交易业务分析工作,协助技术测试实施人员分析应用系统的典型业务场景、典型交易、交易发生规律,以及各类交易的操作人群; 准备阶段,业务人员协助技术测试实施人员分析业务功能的操作方法,业务数据间的关联关系等; 报告阶段,根据需要,业务人员参与报告的评审,分析测试结果对实际业务的满足程度。业务人员性能测试组织结构图 调研阶段,开发工程师负责协助技术测试实施人员分析应用系统的各类通信机制、系统内部结构、各类应用参数的含义,以及服务起停方法和系统日志记录规则等; 准备阶段,开发工程

23、师配合技术测试工程师进行环境检查; 执行阶段,开发工程师负责协助技术测试工程师定位应用软件的瓶颈,分析测试过程中发现的软件问题并予以解决。在系统调优期间,负责应用软件的优化或协调相关开发人员进行优化工作; 报告阶段,根据需求,开发工程师参与技术测试报告的评审。开发工程师性能测试组织结构图调研阶段,运维工程师在调研阶段协助技术测试实施人员进行生产业务量统计分析、生产环境的软硬件配置分析、生产环境的网络环境分析;准备阶段,在环境搭建完毕后,运维工程师负责测试环境与生产环境的差异对比,包括硬件配置、软件配置、网络配置以及相关参数配置;运维工程师性能测试组织结构图专有领域工程师包括:主机工程师、数据库

24、工程师、网络工程师、中间件工程师,包括产品厂商委派的技术支持人员。 主机工程师负责测试执行阶段的主机性能瓶颈定位,以及与主机相关的性能问题分析与解决; 数据库工程师负责测试执行阶段的数据库问题的定位与解决,如数据库升级、数据库参数调整等; 中间件工程师负责测试执行阶段中间件产品的问题定位与解决; 厂商技术支持人员负责测试执行过程中对应产品的问题定位与解决。专家领域工程师5151谢谢!人有了知识,就会具备各种分析能力,明辨是非的能力。所以我们要勤恳读书,广泛阅读,古人说“书中自有黄金屋。”通过阅读科技书籍,我们能丰富知识,培养逻辑思维能力;通过阅读文学作品,我们能提高文学鉴赏水平,培养文学情趣;通过阅读报刊,我们能增长见识,扩大自己的知识面。有许多书籍还能培养我们的道德情操,给我们巨大的精神力量,鼓舞我们前进。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公、行业 > 各类PPT课件(模板)
版权提示 | 免责声明

1,本文(性能测试技术(一)方案课件.ppt)为本站会员(三亚风情)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|