性能测试理论基础培训

上传人:宝路 文档编号:48622548 上传时间:2018-07-18 格式:PPTX 页数:54 大小:1.61MB
返回 下载 相关 举报
性能测试理论基础培训_第1页
第1页 / 共54页
性能测试理论基础培训_第2页
第2页 / 共54页
性能测试理论基础培训_第3页
第3页 / 共54页
性能测试理论基础培训_第4页
第4页 / 共54页
性能测试理论基础培训_第5页
第5页 / 共54页
点击查看更多>>
资源描述

《性能测试理论基础培训》由会员分享,可在线阅读,更多相关《性能测试理论基础培训(54页珍藏版)》请在金锄头文库上搜索。

1、 1 什么是软件性能? 2软件为什么会有性能? 3 什么性能测试? 4 如何做性能测试? 5 如何定位性能根源,性能的瓶颈究竟在哪 儿? 6 如何提升性能? 请大家衡量,做性能测试都需要哪方面能力 ?问题?软件性能测试王云鹏 2010.9.10性能测试概述 性能测试步骤 测试实践(举例)目录完成此培训之后: 了解性能测试的概念 了解性能测试的步骤 理解基本的性能指标 研发中心内部统一性能测试相关概念目标 性能测试概述 性能测试的步骤 测试实践(举例)目录软件的性能是个很大的概念,覆盖面非常广 泛,对一个软件系统而言,包括执行效率、资源 占用、稳定性、安全性、兼容性、可扩展性、可 靠性等等。什么

2、是软件性能n n用户视角的软件性能用户视角的软件性能n n管理员视角的软件性能管理员视角的软件性能n n产品开发人员视角的软件性能产品开发人员视角的软件性能 用户视角的软件性能从用户角度来说,软件性能就是软件对 用户操作的响应时间。什么是软件性能 管理员视角的软件性能系统的响应时间;系统运行时服务器的状态,如CPU利用情况、 内存使用情况等;系统是否能够实现扩展;系统支持多少用户访问;系统性能可能的瓶颈在哪里;系统是否支持7*24小时的业务访问。什么是软件性能 产品开发人员视角的软件性能用户关心的响应时间;管理员关心的系统可扩展性等;架构设计是否合理;数据库设计是否合理;代码是否存在性能方面的

3、问题;系统中是否有不合理的内存使用方式。什么是软件性能性能测试主要是通过自动化的测试工 具模拟多种正常、峰值以及异常负载条件来 对系统的各项性能指标进行测试! 性能测试的概念性能测试的目的 评估系统的能力 识别体系中的弱点 验证系统可伸缩性(resilience)和可靠性( reliability) 系统调优 并发用户数 响应时间 吞吐量 资源利用率性能测试的指标 并发是指在某一给定时间内,某个特定 点上进行会话操作的用户数。注意:此处需要区别于A6、A8的并发数 概念,我们产品并发的概念实际是在线 用户数。性能测试的指标 响应时间指的是客户端发出请求到得到响应 的整个过程所经历的时间。性能测

4、试的指标 吞吐量是指单位时间内系统处理的客户 请求的数量,直接体现软件系统的性能 承载能力。一般来说,吞吐量用请求数/秒或页面数/秒来衡量, 从业务的角度,吞吐量也可以用访问人数/天或处理的 业务数/小时等单位来衡量。从网络的角度来说,也可 以用字节数/天等单位来考察网络流量。性能测试的指标 资源利用率是指系统资源的使用程度, 比如服务器的CPU利用率、内存利用 率、磁盘利用率、网络带宽利用率等。除了上述资源,我们还应该考虑数据 库连接池使用情况,JVM内存使用情况 ,数据库cpu占用情况等因素性能测试的指标性能测试体系分析型性能 测试目的:断定产品性能瓶颈,为性能提升提供修改点和修改方向;分

5、析资源占用情况,为客户实施提供建 议内容:容量测试、压力测试、可靠性测试 发布范围:研发内部 常用指标:资源占用、响应时间定性型性能 测试目的:对外公布指标,指标反映产品性能是否符合需求 内容:容量测试、负载测试、可靠性测试 发布范围:研发、对外 常用指标:吞吐量(单位时间事务成功数)、响应时间对比型性能 测试目的:系统版本间或者是不同系统之间性能对比 内容:容量测试、负载测试、可靠性测试 发布范围:研发内部、对外(选择) 常用指标:资源占用、响应时间、吞吐量 负载测试 压力测试 容量测试 网络性能测试 可靠性测试(疲劳测试)性能测试的内容 含义 主要用于描述常规的性能测试,通过模拟生产运行的

6、业 务压力和使用场景组合来测试系统的性能是否满足生产 要求。 目的 在特定的运行条件下验证系统的能力状况负载测试 含义 压力测试是为了发现在什么条件下应用程序的 性能会变得不可接受。 压力测试与负载测试的比较 实现方法基本相同 测试的目的不同压力测试 含义 确定测试对象在给定时间内能够持续处理的最 大负载或工作量 使测试对象处理大量的数据,以确定是否达到 了将使被测对象发生故障的极限 目的 测试单业务在一定数据容量下性能表现,比 如通讯录、比如选人容量测试 含义 测试网络带宽、延迟、负载和端口的变化对用 户的响应时间的影响 实际应用 主要是测试用户数目与网络带宽的关系,评估 网络的依赖程度网络

7、性能测试 含义 软件可靠性: 在规定条件下,在规定时间内, 软件不引起系统失效的概率 可靠性测试:在有使用代表性的环境中,持续 运行系统某些功能,验证系统稳定性的过程 目的 尽量模拟客户的使用环境,一定业务压力下, 持续运行过程N*24小时,测试系统的稳定性可靠性测试 性能测试概述 性能测试的步骤 压力测试目录性能测试步骤性能测试流程 测试需求分析主要有以下的几个关键点: 测试的目的是什么 评估系统的能力 识别体系中的弱点 验证系统可伸缩性(resilience)和可靠性 (reliability) 系统调优 测试需求分析测试要素分析:用户数量测试执行的功能用户分布(即执行每种功能的用户数)硬

8、件环境(包括网络环境)软件环境数据量其它分析系统运行中所出现的问题有什么特征或规律疲劳测试执行时间多少性能需求的指标是什么等测试需求分析 测试目的不同,则相应的测试策略不 同。性能符合性验证负载测试、疲劳强度测试。性能能力验证压力测试、疲劳强度测试。性能调优测试-调整-测试。负载测试、压力测 试、疲劳强度测试。制定测试计划 测试需求 测试策略 测试场景 测试环境 测试准备 人员及时间安排 问题与对策制定测试方案 测试环境准备 测试数据准备 测试用例、场景准备 测试工具准备性能测试准备 开发测试脚本 布置测试场景 执行测试场景执行测试方案 硬件瓶颈分析方法内存分析方法处理器分析方法磁盘I/O分析

9、方法网络分析方法测试结果分析 内存分析方法1.首先查看可用内存(MemoryAvailable Mbytes) 计数器指标。若值较小则可能有内存问题,需进一步分 析。2.注意Pages/sec、Pages Read/sec和Page Faults/sec计数器的值。 Pages/sec和Page Faults/sec 的值持续很高,很可能内存问题,若Pages Read/sec 的值超过5,则可判断存在内存问题。3.根据Physical Disk计数器的值分析性能瓶颈。如果磁 盘的Average Disk Queue Length计数器增加的同时 Pages Read/sec并未降低,则可判断

10、内存有问题。测试结果分析 处理器分析方法1.首先查看System%Total Processor Time计数器的值。该 值体现的是CPU的平均利用率,若超过90%,则说明存在处 理器方面的瓶颈。2.其次查看每个CPU的Processor%User Time计数器的值。 若应用服务器的%User Time值较大,可以考虑是否能通过算 法优化等方法降低这个值。若数据库服务器的%User Time值 较大,可考虑对数据库系统进行优化。3.查看SystemProcessor Queue Length计数器的值。当该 值大于CPU数量的总数+1时,说明存在处理器方面的问题。测试结果分析 网络分析方法1

11、.查看Network Interface Bytes Total/sec计数器的 值。用Bytes Total/sec计数器的值和网络的带宽进行比较,若超过50%,则说明网络存在性能瓶颈问题。 测试结果分析 软件瓶颈分析方法分析事务响应时间、吞吐量,确定是否存在性能问题, 若发现存在性能问题,则找出响应时间不符合要求或 者出现多个失败的事务,对其进行分解,然后对其进 行网页细分,以确定影响性能的元素。测试结果分析 测试指标:描述与测试场景对应的事务平均响应时 间、事务吞吐率、资源消耗指标、运行的用户数等信 息。 结果分析与总结:根据测试目标,描述最后分析 得到的结果,并给出相应的建议。编写测试

12、报告 性能测试概述 性能测试的步骤 测试实践(举例)目录 某网站测试需求可以支持100个并发用户执行各种查询 操作,要求各查询操作的响应时间在5秒 以内,服务器CPU利用率在80%以下。性能测试实践 性能需求分析测试目的:验证是否满足应用要求(性能符合性 验证)。测试要素:并发用户数-100。测试功能-仪器信息与使用预约、大型精密仪器 机组查询、交流平台搜索、会展信息搜索。用户分布-平均分配。数据量、软件、硬件环境委托方负责准备。性能测试实践压力测试用例明确测试目的准备测试环境确定测试数据确定测试运行程序(脚本等)明确预期结果性能测试实践 测试场景场景1:100个用户同时执行仪器信息使用预约操

13、作。场景2:100个用户同时执行大型精密仪器查询操作。场景3:100个用户同时执行交流平台搜索操作。场景4:100个用户同时执行会展信息搜索操作。场景5:100个用户同时执行不同的操作,其中25个用户执 行仪器信息与使用预约操作,25个用户执行大型精密仪器机 组查询操作,25个用户执行交流平台搜索操作,25个用户执 行会展信息搜索操作。性能测试实践 监测的系统资源 网络阻塞情况 主机CPU使用情况 内存使用情况 缓存使用情况 数据库系统的数据锁性能测试实践 LoadRunner介绍Virtual User Generator用来录制脚本、编辑脚本Controller用来布置测试场景、执行测试场

14、景Analysis用来对测试结果进行分析性能测试实践测试流程图 CompuWare 公司的QALoad; Mercury Interactive公司的 LoadRunner; Microsoft公司的WAS ; RadView公司的WebLoad ; IBM公司的RPT ; 开源工具:OPENSTA等。常见性能测试工具 1、简介QALoad模拟成百上千的用户并发执行关键业务而完 成对应用程序的测试,并针对所发现问题对系统性能 进行优化,确保应用的成功部署。 QALoad不单单测 试WEB应用,还可以测试一些后台的东西,比如SQL Server等,只要是它支持的协议,都可以测试。 2、特征 1)

15、自动捕获实际执 行过程,自动生成测试脚本; 2)通过控制台控制各个Agent,进行脚本分配; 3)应用广泛,支持多种协议,如DB2、ODBC、 WWW、Winsock等等。QALoad1、简介 LoadRunner 是一种预测系统行为和性能的负载测试工具。通过模拟上 千万用户实施并发负载及实时性能检测来确认和查找问题,能够对整个 企业架构进行测试。通过使用Loadrunner,企业能够最大限度的缩短 测试时间,优化性能和加速应用系统的发布周期。LoadRunner 能支持 广范的协议和技术,功能比较强大,可以为特殊环境提供特殊的解决方 案。 2、特征 )轻松创建虚拟用户; )创建真实的负载; )定位性能问题; )分析结果以精确定位问题所在; )重复测试保证系统发布的高性能; )支持Enterprise Java Beans的测试;7 )支持无线应用协议;8 )支持Media Stream应用。LoadRunner 、简介: WAS-Web Application Stress是由微软的网站测试人员 所开发,专门用来进行实际网站压力测试的一套工具。透过 这套功能强大的压力测试工具,您可以使用少量的Client端 计算机仿真大量用户上线对网站服务所可能造成的影响。 、

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号