1.性能测试理论

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

SINYEE1.性能测试介绍2.性能测试过程3.性能测试举例内容概要SINYEE1.1什么是软件性能1.2性能指标介绍1.3什么是性能测试1.4性能测试类型性能测试介绍SINYEE什么是软件性能系统的性能是个很大的概念,覆盖面非常广泛,对一个软件系统而言,包括执行效率、资源占用、稳定性、安全性、兼容性、可扩展性、可靠性等等。用户视角的软件性能管理员视角的软件性能产品开发人员视角的软件性能SINYEE什么是软件性能1.1.1用户视角的软件性能从用户角度来说,软件性能就是软件对用户操作的响应时间。1.1.2管理员视角的软件性能系统的响应时间;系统运行时服务器的状态,如CPU利用情况、内存使用情况等;系统是否能够实现扩展;系统支持多少用户访问;系统性能可能的瓶颈在哪里;系统是否支持7*24小时的业务访问。SINYEE什么是软件性能1.1.3产品开发人员视角的软件性能用户关心的响应时间;管理员关心的系统可扩展性等;架构设计是否合理;数据库设计是否合理;代码是否存在性能方面的问题;系统中是否有不合理的内存使用方式。SINYEE什么是性能测试性能测试主要是通过自动化的测试工具模拟多种正常、峰值以及异常负载条件来对系统的各项性能指标进行的一种测试。SINYEE为什么要进行性能测试1.评估系统的能力,测试中得到的负荷和响应时间数据可以被用于验证所计划的模型的能力,并帮助作出决策。2.识别体系中的弱点:受控的负荷可以被增加到一个极端的水平,并突破它,从而修复体系的瓶颈或薄弱的地方。3.系统调优:重复运行测试,验证调整系统的活动得到了预期的结果,从而改进性能。4.检测软件中的问题:长时间的测试执行可导致程序发生由于内存泄露引起的失败,揭示程序中的隐含的问题或冲突。5.验证稳定性(resilience)可靠性(reliability):在一个生产负荷下执行测试一定的时间是评估系统稳定性和可靠性是否满足要求的唯一方法。SINYEE性能测试注意事项1.服务器端和客户端一定要同一个局域网内,否则网络因素会成为性能测试的瓶颈。2.在性能测试脚本中要注意检查点的设置,否则都不清楚脚本是否真的成功执行操作。3.设置参数化和关联是性能测试脚本调通的关键。4.录制脚本时通常会包括一些thinktime,因此在回放脚本时,注意在runtimesetting中设置忽略thinktime,否则会影响测试数据的准确性,如:响应时间的准确性。5.尽量每个页面设置一个transcation,否则不知哪个页面最慢。6.运行性能测试时在runtimesetting中关闭日志功能,调试脚本时可以打开日志功能。7.性能测试前的数据准备很重要:比如:系统数据库存在60000个用户和系统数据库存在60个用户,分别在两种情况下执行登陆性能测试,性能测试的结果也不会一样的。8.在性能测试时用户登陆的用户名和密码,每个用户尽可能不要一样!SINYEE性能指标介绍并发用户数响应时间吞吐量资源利用率点击率事务处理时间SINYEE并发用户数并发用户数是指在某一给定时间内,某个特定点上进行会话操作的用户数,即同时进行请求的客户的数量SINYEE响应时间响应时间指的是客户端发出请求到得到响应的整个过程所经历的时间。SINYEE请求响应时间:指的是客户端发出请求到得到响应的整个过程的时间。在某些工具中,请求响应时间通常会被成为“TLLB”,即“Timetolastbyte”,意思是从发起一个请求开始,到客户端接收到最后一个字节的响应时间所耗费的时间。请求响应时间过程的单位一般为“秒”或者“毫秒”.事务响应时间:事务可能由一系列请求组成,事务的响应时间主要是针对用户而言,属于宏观上的概念,是为了向用户说明业务响应时间而提出的.例如:跨行取款事务的响应时间就是由一系列的请求组成的.事务响应时间和后面的业务吞吐率都是直接衡量系统性能的参数.响应时间SINYEE吞吐量吞吐量是指单位时间内系统处理的客户请求的数量,直接体现软件系统的性能承载能力。一般来说,吞吐量用请求数/秒或页面数/秒来衡量,从业务的角度,吞吐量也可以用访问人数/天或处理的业务数/小时等单位来衡量。从网络的角度来说,也可以用字节数/天等单位来考察网络流量。SINYEE源利用率资源利用率是指系统资源的使用程度,比如服务器的CPU利用率、内存利用率、磁盘利用率、网络带宽利用率等。.资源利用率是分析系统性能指标进而改善性能的主要依据,因此是WEB性能测试工作的重点.资源利用率主要针对WEB服务器,操作系统,数据库服务器,网络等,是测试和分析瓶颈的主要参考.在WEB性能测试中,更根据需要采集相应的参数进行分析.SINYEE点击率点击率:HPS,每秒钟用户向WEB服务器提交的HTTP请求数.这个指标是WEB应用特有的一个指标。点击率越大,对服务器的压力越大.点击率只是一个性能参考指标,重要的是分析点击时产生的影响这里的点击并非指鼠标的一次单击操作,因为在一次单击操作中,客户端可能向服务器发出多个HTTP请求.SINYEE性能测试类型负载测试压力测试疲劳强度测试基准测试SINYEE负载测试负载测试:主要用于描述常规的性能测试,通过模拟生产运行的业务压力和使用场景组合来测试系统的性能是否满足生产要求。通俗的说,这种测试方法就是要在特定的运行条件下验证系统的能力状况。SINYEE压力测试压力测试:对系统不断施加压力的测试,是通过确定一个系统的瓶颈或者不能接收用户请求的性能点,来获得系统能提供的最大的服务级别的测试。通俗地讲,压力测试是为了发现在什么条件下应用程序的性能会变得不可接受。SINYEE压力测试用户量压力测试数据量压力测试SINYEE疲劳强度测试疲劳强度测试通常是采用系统稳定运行情况下能够支持的最大并发用户数或者日常运行用户数,持续执行一段时间业务,通过综合分析交易执行指标和资源监控指标来确定系统处理最大工作量强度性能的过程。疲劳强度测试可以反映出系统的性能问题,例如内存泄漏等。SINYEE基准测试当软件系统中增加一个新的模块的时候,需要做基准测试,以判断新模块对整个软件系统的性能影响。按照基准测试的方法,需要打开/关闭新模块至少各做一次测试。关闭模块之前的系统各个性能指标记下来作为基准(Benchmark),然后与打开模块状态下的系统性能指标作比较,以判断模块对系统性能的影响。SINYEE性能测试过程测试需求分析制定测试策略制定测试方案执行测试方案测试结果分析编写测试报告SINYEE测试需求分析测试需求分析主要有以下的几个关键点:测试的目的是什么性能符合性验证:验证是否满足应用的需要。性能能力验证:确定性能极限、是否存在性能瓶颈。性能调优:对系统的性能进行调试、优化。SINYEE测试需求分析测试要素分析:用户数量测试执行的功能用户分布(即执行每种功能的用户数)硬件环境(包括网络环境)软件环境数据量其它分析系统运行中所出现的问题有什么特征或规律疲劳测试执行时间多少性能需求的指标是什么等SINYEE制定测试策略测试目的不同,则相应的测试策略不同。性能符合性验证—负载测试、疲劳强度测试。性能能力验证—压力测试、疲劳强度测试。性能调优—测试-调整-测试。负载测试、压力测试、疲劳强度测试。SINYEE制定测试方案测试需求测试策略测试场景测试环境测试准备人员及时间安排问题与对策SINYEE执行测试方案搭建测试环境录制脚本、编辑脚本布置测试场景执行测试场景SINYEE测试结果分析性能符合性验证:查看测试结果是否满足要求,比如响应时间、资源利用率、吞吐量等等。性能能力验证:查看测试结果是否满足要求,记录软件系统的性能变化曲线。对于确定是否存在性能瓶颈,首先判断是否存在硬件(包括网络)瓶颈问题,若不存在硬件瓶颈问题,则按照应用软件到系统软件(应用服务器、数据库服务器、操作系统)的顺序进行分析,确定瓶颈点。性能调优:同性能能力验证确定性能瓶颈分析方法。SINYEE测试结果分析硬件瓶颈分析方法内存分析方法处理器分析方法磁盘I/O分析方法网络分析方法SINYEE测试结果分析内存分析方法1.首先查看可用内存(Memory\AvailableMbytes)计数器指标。若值较小则可能有内存问题,需进一步分析。2.注意Pages/sec、PagesRead/sec和PageFaults/sec计数器的值。Pages/sec和PageFaults/sec的值持续很高,很可能内存问题,若PagesRead/sec的值超过5,则可判断存在内存问题。3.根据PhysicalDisk计数器的值分析性能瓶颈。如果磁盘的AverageDiskQueueLength计数器增加的同时PagesRead/sec并未降低,则可判断内存有问题。SINYEE测试结果分析处理器分析方法1.首先查看System\%TotalProcessorTime计数器的值。该值体现的是CPU的平均利用率,若超过90%,则说明存在处理器方面的瓶颈。2.其次查看每个CPU的Processor\%UserTime计数器的值。若应用服务器的%UserTime值较大,可以考虑是否能通过算法优化等方法降低这个值。若数据库服务器的%UserTime值较大,可考虑对数据库系统进行优化。3.查看System\ProcessorQueueLength计数器的值。当该值大于CPU数量的总数+1时,说明存在处理器方面的问题。SINYEE测试结果分析磁盘I/O分析方法1.查看%DiskTime计数器的值。该值较大,则可能存在磁盘瓶颈问题。2.与Processor\PrivilegedTime合并进行分析。若%DiskTime值较大,而Processor\PrivilegedTime的值适中,则可判断存在磁盘问题。若Processor\PrivilegedTime较大,持续超过80%,则可能是内存泄漏。3.根据Disksec/Transfer进行分析。该值超过60ms,则磁盘存在问题。SINYEE测试结果分析网络分析方法1.查看NetworkInterface\BytesTotal/sec计数器的值。用BytesTotal/sec计数器的值和网络的带宽进行比较,若超过50%,则说明网络存在性能瓶颈问题。SINYEE测试结果分析软件瓶颈分析方法分析事务响应时间、吞

1 / 51
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功