已阅读5页,还剩7页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
软件性能测试及工具的使用Web 应用系统性能测试简介引言 基于Web服务器的应用系统由于提供浏览器界面而无须安装,大大降低了系统部署和升级成本,得以普遍应用。目前,很多企业的核心业务系统均是Web应用,但当Web应用的数据量和访问用户量日益增加,系统不得不面临性能和可靠性方面的挑战。因此,无论是Web应用系统的开发商或最终用户,都要求在上线前对系统进行性能,室验实TI国中科学评价系统的性能,从而降低系统上线后的性能风险。 在很多性能测试项目中,由于不能合理定义系统的性能测试需求,不能建立和真实环境相符的负载模型,不能科学分析性能测试结果,导致性能测试项目持续时间很长或不能真正评价系统性能并提出性能改进措施。 性能测试是 Web 应用系统的一项重要质量保证措施。在现实中,很多 Web 性能测试项目由于性能测试需求定义不合理或不明确,导致性能测试项目不能达到预期目标或进度超期。本文针对 Web 应用系统的技术架构和系统使用特点,探讨如何有效实施性能测试过程,并重点介绍如何分析获得合理的性能测试需求,最终对 Web 应用系统性能进行科学、准确的评估。 性能测试是通过自动化的测试工具模拟多种正常、峰值以及异常负载条件来对系统的各项性能指标进行测试。负载测试和压力测试都属于性能测试,两者可以结合进行。通过负载测试,确定在各种工作负载下系统的性能,目标是测试当负载逐渐增加时,系统各项性能指标的变化情况。压力测试是通过确定一个系统的瓶颈或者不能接受的性能点,来获得系统能提供的最大服务级别的测试。 性能测试在软件的质量保证中起着重要的作用,它包括的测试内容丰富多样。性能测试概括为三个方面:应用在客户端性能的测试、应用在网络上性能的测试和应用在服务器端性能的测试。通常情况下,三方面有效、合理的结合,可以达到对系统性能全面的分析和瓶颈的预测。 一、性能测试术语定义1.1 性能测试分类1.1.1负载测试(Load Testing):通过在被测系统上不断加压,直到性能指标达到极限,例如“响应时间”超过预定指标或都某种资源已经达到饱和状态。特点:1、负载测试方法的主要目的是找到系统处理能力的极限。2、负载测试方法需要在给定的测试环境下进行,通常也需要考虑被测试系统的业务压力量和典型场景、使得测试结果具有业务上的意义。3、负载测试方法一般用来了解系统的性能容量,或是配合性能调优来使用。总结:负载测试方法是对一个系统持续不段的加压,看你在什么时候已经超出“我的要求”或系统崩溃。1.1.2压力测试(Stress Testing):压力测试方法测试系统在一定饱和状态下,例如cpu、内存在饱和使用情况下,系统能够处理的会话能力,以及系统是否会出现错误特点:1、压力测试方法的主要目的是检查系统处于压力性能下时,应用的表现。2、这种性能测试一般通过模拟负载等方法,使得系统的资源使用达到较高的水平。3、这种性能测试方法一般用于测试系统的稳定性。总结:压力测试是让系统处在很大强度的压力之下,看系统是否稳定,哪里会出问题。1.1.4容量测试(Volume Testing):确定系统最大承受量,譬如系统最大用户数,最大存储量,最多处理的数据流量等。1.1.4可靠性测试(reliabilitytesting)在给系统加载一定业务压力的情况下,使系统运行一段时间,以此检测系统是否稳定。特点:1、可靠性测试方法的主要目的是验证是否支持长期稳定的运行。2、可靠性测试方法需要在压力下持续一段时间的运行。(23天)3、可靠性测试过程中需要关注系统的运行状况。总结:可靠性测试的关注点是“稳定”,不需要给系统太大的压力,只要系统能够长期处于一个稳定的状态。1.2 性能测试名词1.2.1性能测试:通过模拟大量浏览器客户端同时访问Web服务器,获得系统的性能数据。1.2.2虚拟用户:模拟浏览器向Web服务器发送请求并接收响应的一个进程或线程。1.2.3响应时间:浏览器向Web服务器提交一个请求到收到响应之间的间隔时间。1.2.4思考时间:浏览器在收到响应后到提交下一个请求之间的间隔时间。1.2.5请求成功率:Web服务器正确处理的请求数量和接收到的请求数量比。1.2.6吞吐量:单位时间内Web服务器成功处理的HTTP页面或HTTP请求数量。1.2.7在线用户数: 用户通过浏览器访问登录Web应用系统后,并不退出该应用系统。通常一个Web应用服务器的在线用户对应Web应用服务器的一个Session。1.2.8并发用户数:Web服务器在一段时间内为处理浏览器请求而建立的HTTP连接数或生成的处理线程 数。当所有在线用户发送HTTP请求的思考时间为零时,Web服务器的并发用户数等于在线用户数。1.2.9名词解释-基于LoadRunnerTransation Sunmmary(事务综述)对事务进行综合分析是性能分析的第一步,通过分析测试时间内用户事务的成功与失败情况,可以直接判断出系统是否运行正常。Average Transaciton Response Time(事务平均响应时间)“事务平均响应时间”显示的是测试场景运行期间的每一秒内事务执行所用的平均时间,通过它可以分析测试场景运行期间应用系统的性能走向。例:随着测试时间的变化,系统处理事务的速度开始逐渐变慢,这说明应用系统随着投产时间的变化,整体性能将会有下降的趋势。Transactions per Second(每秒通过事务数/TPS)“每秒通过事务数/TPS”显示在场景运行的每一秒钟,每个事务通过、失败以及停止的数量,使考查系统性能的一个重要参数。通过它可以确定系统在任何给定时刻的时间事务负载。分析TPS主要是看曲线的性能走向。将它与平均事务响应时间进行对比,可以分析事务数目对执行时间的影响。例:当压力加大时,点击率/TPS曲线如果变化缓慢或者有平坦的趋势,很有可能是服务器开始出现瓶颈。Total Transactions per Second(每秒通过事务总数)“每秒通过事务总数”显示在场景运行时,在每一秒内通过的事务总数、失败的事务总署以及停止的事务总数。 Transaction Performance Sunmmary(事务性能摘要)“事务性能摘要”显示方案中所有事务的最小、最大和平均执行时间,可以直接判断响应时间是否符合用户的要求。重点关注事务的平均和最大执行时间,如果其范围不在用户可以接受的时间范围内,需要进行原因分析。 Transaction Response Time Under Load(事务响应时间与负载)“事务响应时间与负载”是“正在运行的虚拟用户”图和“平均响应事务时间”图的组合,通过它可以看出在任一时间点事务响应时间与用户数目的关系,从而掌握系统在用户并发方面的性能数据,为扩展用户系统提供参考。此图可以查看虚拟用户负载对执行时间的总体影响,对分析具有渐变负载的测试场景比较有用。1.2.10Web Resources(Web资源分析)Web资源分析是从服务器入手对Web服务器的性能分析。Hits per Second(每秒点击次数)“每秒点击次数”,即使运行场景过程中虚拟用户每秒向Web服务器提交的HTTP请求数。通过它可以评估虚拟用户产生的负载量,如将其和“平均事务响应时间”图比较,可以查看点击次数对事务性能产生的影响。通过对查看“每秒点击次数”,可以判断系统是否稳定。系统点击率下降通常表明服务器的响应速度在变慢,需进一步分析,发现系统瓶颈所在。 Throughput(吞吐率)“吞吐率”显示的是场景运行过程中服务器的每秒的吞吐量。其度量单位是字节,表示虚拟用在任何给定的每一秒从服务器获得的数据量。可以依据服务器的吞吐量来评估虚拟用户产生的负载量,以及看出服务器在流量方面的处理能力以及是否存在瓶颈。“吞吐率”图和“点击率”图的区别:“吞吐率”图,是每秒服务器处理的HTTP申请数。“点击率”图,是客户端每秒从服务器获得的总数据量。 HTTP Status Code Summary(HTTP状态代码概要)“HTTP状态代码概要”显示场景或会话步骤过程中从Web服务器返回的HTTP状态代码数,该图按照代码分组。HTTP状态代码表示HTTP请求的状态。 HTTP Responses per Second(每秒HTTP响应数)“每秒HTTP响应数”是显示运行场景过程中每秒从Web服务器返回的不同HTTP状态代码的数量,还能返回其它各类状态码的信息,通过分析状态码,可以判断服务器在压力下的运行情况,也可以通过对图中显示的结果进行分组,进而定位生成错误的代码脚本。 Pages Downloader per Second(每秒下载页面数)“每秒下载页面数”显示场景或会话步骤运行的每一秒内从服务器下载的网页数。使用此图可依据下载的页数来计算Vuser生成的负载量。和吞吐量图一样,每秒下载页面数图标是Vuser在给定的任一秒内从服务器接收到的数据量。但是吞吐量考虑的各个资源极其大小(例,每个GIF文件的大小、每个网页的大小)。而每秒下载页面数只考虑页面数。注:要查看每秒下载页数图,必须在R-T-S那里设置“每秒页面数(仅HTML模式)”。 Retries per Second(每秒重试次数)“每秒重试次数”显示场景或会话步骤运行的每一秒内服务器尝试的连接次数。在下列情况将重试服务器连接:A、初始连接未经授权B、要求代理服务器身份验证C、服务器关闭了初始连接D、初始连接无法连接到服务器E、服务器最初无法解析负载生成器的IP地址 Retries Summary(重试次数概要)“重试次数概要”显示场景或会话步骤运行过程中服务器尝试的连接次数,它按照重试原因分组。将此图与每秒重试次数图一起使用可以确定场景或会话步骤运行过程中服务器在哪个时间点进行了重试。 Connections(连接数)“连接数”显示场景或会话步骤运行过程中每个时间点打开的TCP/IP连接数。借助此图,可以知道何时需要添加其他连接。例:当连接数到达稳定状态而事务响应时间迅速增大时,添加连接可以使性能得到极大提高(事务响应时间将降低)。 Connections Per Second(每秒连接数)“每秒连接数”显示方案在运行过程中每秒建立的TCP/IP连接数。理想情况下,很多HTTP请求都应该使用同一连接,而不是每个请求都新打开一个连接。通过每秒连接数图可以看出服务器的处理情况,就表明服务器的性能在逐渐下降。0 SSLs Per Second(每秒SSL连接数)“每秒SSL连接数”显示场景或会话步骤运行的每一秒内打开的新的以及重新使用的SSL连接数。当对安全服务器打开TCP/IP连接后,浏览器将打开SSL连接。1.3 性能测试指标1.3.1通用指标(指Web应用服务器、数据库服务器必需测试项):ProcessorTime: 指服务器CPU占用率,一般 平均达到70%时,服务就接近饱和; Memory Available Mbyte : 可用内存数,如果测试时发现内存有变化情况也要注意,如果是内存泄露则比较严重; Physicsdisk Time : 物理磁盘读写时间情况;1.3.2Web服务器指标: Avg Rps: 平均每秒钟响应次数总请求时间 / 秒数; Avg time to last byte per terstion (mstes):平均每秒业务角本的迭代次数 ,有人会把这两者混淆; Successful Rounds:成功的请求; Failed Rounds :失败的请求; Successful Hits :成功的点击次数; Failed Hits :失败的点击次数; Hits Per Second :每秒点击次数; Successful Hits Per Second :每秒成功的点击次数; Failed Hits Per Second :每秒失败的点击次数; Attempted Connections :尝试链接数; 1.3.3数据库服务器指标: User Connections :用户连接数,也就是数据库的连接数量; Number of deadlocks:数据库死锁; Buffer Cache hit ratio:数据库Cache命中率;备注:系统的整体性能由许多因素决定,例如CPU利用率,CPU队列长度(即,有多少任务正在等待CPU的服务),磁盘忙闲程度(即,磁盘驱动器有多少时间用于响应请求),可用的物理内存,网络接口的利用情况,等等,表一概括了最常用的性能计数器。表一:重要的性能计数器性能对象计数器提供的信息MemoryAvailable BytesAvailable Bytes显示出当前空闲的物理内存总量。当这个数值变小时,Windows开始频繁地调用磁盘页面文件。如果这个数值很小,例如小于5 MB,系统会将大部分时间消耗在操作页面文件上。Memory% Committed Bytes in Use% Committed Bytes In Use 是 Memory: Committed Bytes 与Memory: Commit Limit之间的比值。(Committed memory指如果需要写入磁盘时已在分页文件中保留空间的处于使用中的物理内存。Commit Limit是由分页文件的大小而决定的。如果扩大了分页文件,该比例就会减小)。这个计数器只显示当前百分比;而不是一个平均值。MemoryPage Faults/secPage Faults/sec是指处理器处理错误页的综合速率。用错误页数/秒来计算。当处理器请求一个不在其工作集(在物理内存中的空间)内的代码或数据时出现的页错误。这个计数器包括硬错误(那些需要磁盘访问的)和软错误(在物理内存的其它地方找到的错误页)。许多处理器可以在有大量软错误的情况下继续操作。但是,硬错误可以导致明显的拖延。这个计数器显示用上两个实例中观察到的值之间的差除以实例间隔的持续时间所得的值。Network InterfaceBytes Total/secBytes Total/sec是发送和接收字节的速率,包括帧字符在内。Network InterfacePackets/secPackets/sec为发送和接收数据包的速率。Physical Disk% Busy Time% Busy Time指磁盘驱动器忙于为读或写入请求提供服务所用的时间的百分比。Physical DiskAvg. Disk Queue LengthAvg. Disk Queue Length 指读取和写入请求(为所选磁盘在实例间隔中列队的)的平均数。Physical DiskCurrent Disk Queue LengthCurrent Disk Queue Length指在收集操作数据时在磁盘上未完成的请求的数目。它包括在快照内存时正在为其提供服务中的请求。这是一个即时长度而非一定间隔时间的平均值。多主轴磁盘设备可以一次有多个请求操作,但是其它同时发生的请求为等候服务。这个计数器可能会反映一个暂时的高或低的列队长度,但是如果在磁盘驱动器存在持续负载,可能值会总是很高。请求等待时间与这个列队的长度减去磁盘上的主轴成正比。这个差值应小于2才能保持良好的性能。Processor% Processor Time% Processor Time指处理器执行非闲置线程时间的百分比。这个计数器设计成用来作为处理器活动的主要指示器。它通过在每个范例间隔中衡量处理器用于执行闲置处理线程的时间,并且用100%减去该值得出。(每个处理器有一个闲置线程,该线程在没有其它线程可以运行时消耗周期)。可将其视为范例间隔用于做有用工作的百分比。Processor% User Time% User Time指用于用户模式的非闲置处理器时间的百分比(用户模式是为应用程序、环境分系统和整数分系统设计的有限处理模式。另一个模式为特权模式,它是为操作系统组件设计的并且允许直接访问硬件和所有内存。操作系统将应用程序线程转换成特权模式以访问操作系统服务)。这个计数值将平均忙时作为实例时间的一部分显示。Server Work QueuesQueue LengthQueue Length指CPU当前的服务器作业队列长度。队列长度长时间超过四可能表示处理器堵塞。此值为即时计数,不是一段时间的平均值。SystemProcessor Queue LengthProcessor Queue Length是指处理队列中的线程数。即使在有多个处理器的计算机上处理器时间也会有一个单队列。不象磁盘计数器,这个计数器仅计数就绪的线程,而不计数运行中的线程。如果处理器队列中总是有两个以上的线程通常表示处理器堵塞。这个计数器仅显示上一次观察的值;而不是一个平均值。TCPSegments Retransmitted/secSegments Retransmitted/sec指程序段重新传输的速率,即传输的程序段中包含一个或多个以前传输过的字节。二、软件性能测试小点2.1软件性能测试指标的来源测试的依据是产品的需求规格说明书;如果用户没有提出性能指标则根据用户需求、测试设计人员的经验来设计各项测试指标。2.2软件性能测试的目的通过测试确认软件是否满足产品的性能需求,同时发现系统中存在的性能瓶颈,起到优化系统的目的。2.3软件性能测试的指标服务器的各项指标(CPU使用率、内存占用率、硬盘占用率等)、后台数据库的各项指标和软件的响应时间:2.3.1操作系统有关的指标:CPU平均利用率、内存平均占用率、硬盘占用率、I/O
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 大班综合活动云彩和风儿教案反思(2025-2026学年)
- 幼儿园大班社会活动教案为国争光的运动员(2025-2026学年)
- 西藏高原水利隧洞安全施工专项方案教案(2025-2026学年)
- 大班语言不一样的小豆豆教案
- 初中初一上册语文生命生命教案(2025-2026学年)
- 初三道德法治统编版夯实法治基础教案(2025-2026学年)
- 四年级语文上册《游山西村》教案(2025-2026学年)
- 统编版高一语文必修下册第二单元哈姆莱特导教案
- 2026年河南科技职业大学单招职业技能笔试备考试题及答案详解
- 四年级科学下册三单元市公开课金奖市赛课教案
- 2025年国家开放大学《药理学》期末考试备考试题及答案解析
- 水库运维基础知识培训课件
- 汽车产业自动驾驶政策法规2025年研究报告
- 节奏和节拍的课件
- 火器伤急救处理课件
- 广东午托管理办法
- 食品安全风险隐患内部报告奖励规定
- 物流公司信息系统账号权限管理制度
- 燃气企业三级安全生产教育培训
- 2025-2030中国矿泉水市场盈利预测及发展潜力分析报告
- 第十四章 老年性尿失禁课件
评论
0/150
提交评论