软件性能测试概述_第1页
软件性能测试概述_第2页
软件性能测试概述_第3页
软件性能测试概述_第4页
软件性能测试概述_第5页
已阅读5页,还剩42页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、技术创新,变革未来软件性能测试概述2软件性能测试过程1. 性能测试介绍2. 性能测试过程3. 性能测试举例31. 性能测试介绍1.1 什么是软件性能1.2 性能指标介绍1.3 什么是性能测试1.4 性能测试类型41.1 什么是软件性能 系统的性能是个很大的概念,覆盖面非常广泛,对一个软件系统而言,包括执行效率、资源占用、稳定性、安全性、兼容性、可扩展性、可靠性等等。 用户视角的软件性能 管理员视角的软件性能 产品开发人员视角的软件性能51.1 什么是软件性能1.1.1 用户视角的软件性能 从用户角度来说,软件性能就是软件对用户操作的响应时间。61.1 什么是软件性能1.1.2 管理员视角的软件

2、性能 系统的响应时间; 系统运行时服务器的状态,如CPU利用情况、内存使用情况等; 系统是否能够实现扩展; 系统支持多少用户访问; 系统性能可能的瓶颈在哪里; 系统是否支持7*24小时的业务访问。系统稳定性系统可扩展性系统容量系统可扩展性资源利用率71.1 什么是软件性能1.1.3 产品开发人员视角的软件性能 用户关心的响应时间; 管理员关心的系统可扩展性等; 架构设计是否合理; 数据库设计是否合理; 代码是否存在性能方面的问题; 系统中是否有不合理的内存使用方式。系统架构数据库设计代码代码81.2 性能指标介绍并发用户数响应时间吞吐量资源利用率思考时间91.2.1 并发用户数是指在某一给定时

3、间内,某个特定点上进行会话操作的用户数。C=nL/TCC+3CC:平均并发用户数,C并发用户数峰值n:从登录进入系统到退出系统之间的时间段用户数量L:用户从登录进入系统到退出系统之间的时间段平均长度10假设有一个OA系统,该系统有3000个用户,平均每天大约有400个用户要访问该系统,对一个典型用户来说,一天之内用户从登录到退出该系统的平均时间为4小时,在一天的时间内,用户只在8小时内使用该系统。C=4004/8=200C=200+3200=24211并发是指多个同时发生的操作。比如有10个用户同时点击“登录”按钮(注意是同时),来登录163邮箱。注意:并发和并行不是一个概念,并发是同时发生,

4、并行是同步运行。10个用户并发登录163邮箱,只是在点击“登录”按钮那一瞬间是并行的,而登录后各个用户的操作则不同步。 121.2.2 响应时间指的是客户端发出请求到得到响应的整个过程所经历的时间。页面响应时间网络传输时间(N1+N2+N3+N4)+应用延迟时间(A1+A2+A3)分解目的:为了能更好定位性能瓶颈13如何测试邮箱的登录响应时间 ?应该从按下“登录”按钮的那一瞬间开始计时,到登录后页面完全显示出来为止,这才是真正的用户登录时间,而不包括用户输入用户名和密码的时间以及思考停顿的时间 。14合理的响应时间普通的web网站,一个普遍被接受的响应时间标准为2/5/10秒,在2s之内给客户

5、响应被用户认为是非常有吸引力的,在5s之内响应被认为是比较不错的,而10s是客户能接受的响应的上限。一个税务报帐系统,该系统的用户每月使用一次该系统,一次花费2hours以上进行数据录入,当用户单击“提交”按钮后,即使系统在20m后才给出“处理成功”的消息,用户不会认为该系统的响应时间不能接受。合理的响应时间取决于实际的用户需求。151.2.3 吞吐量吞吐量是指单位时间内系统处理的客户请求的数量,直接体现软件系统的性能承载能力。 一般来说,吞吐量用请求数/秒或页面数/秒来衡量,从业务的角度,吞吐量也可以用访问人数/天或处理的业务数/小时等单位来衡量。从网络的角度来说,也可以用字节数/天等单位来

6、考察网络流量。对于非交互式应用,吞吐量描述系统性能更合理。在没有遇到性能瓶颈时:F=(NvuR)/T F:吞吐量;Nvu:虚拟用户个数;R:每个VU发出的请求数量;T:性能测试所用的时间。 16图. 随着负载的增加,系统吞吐量的曲线(单位:页面/秒) 17吞吐量是大型门户网站以及各种电子商务网站衡量自身负载能力的一个很重要的指标,一般吞吐量越大,系统单位时间内处理的数据越多,系统的负载能力也越强。 吞吐量和很多因素有关,比如服务器的硬件配置,网络的拓扑结构,软件的技术架构等。 181.2.4 资源利用率资源利用率是指系统各种资源的使用状况,比如服务器的CPU利用率、内存利用率、磁盘利用率、网络

7、带宽利用率等。性能测试中,用资源利用率进行横向对比。191.2.5 思考时间也称休眠时间,这个时间指的是用户在进行操作时,每个请求之间的间隔时间。体现在自动测试脚本中,在操作之间放置一个Think函数。计算思考时间的一般步骤:计算出系统的并发用户数;统计出系统平均的吞吐量;统计出平均每个用户发出的请求数量;用RT/Ts计算出思考时间Ts。201.3 什么是性能测试性能测试主要是通过自动化的测试工具模拟多种正常、峰值以及异常负载条件来对系统的各项性能指标进行的一种测试。 211.4 性能测试类型稳定性测试负载测试压力测试222. 性能测试过程测试需求分析制定测试策略制定测试方案执行测试测试结果分

8、析编写测试报告232.1 测试需求分析测试需求分析主要有以下的几个关键点:1)测试的目的是什么 性能符合性验证:验证是否满足应用的需要。 性能能力验证:确定性能极限、是否存在性能瓶颈。 性能调优:对系统的性能进行调试、优化。242)测试要素分析 用户数量 测试执行的功能 用户分布(即执行每种功能的用户数) 硬件环境(包括网络环境) 软件环境 数据量3)其它分析 系统运行中所出现的问题有什么特征或规律 稳定性测试执行时间多少 性能需求的指标是什么等252.2 制定测试策略测试目的不同,则相应的测试策略不同。 性能符合性验证负载测试 性能能力验证压力测试 性能调优测试-调整-测试。负载测试、压力测

9、试262.3 制定测试方案测试需求测试策略测试场景的设计和设置,监控指标的设定测试环境测试准备人员及时间安排问题与对策272.4 执行测试搭建测试环境录制脚本、编辑脚本布置测试场景执行测试场景282.5 测试结果分析(1)性能符合性验证:查看测试结果是否满足要求,比如响应时间、资源利用率、吞吐量等等。性能能力验证:查看测试结果是否满足要求,记录软件系统的性能变化曲线。 对于确定是否存在性能瓶颈,首先判断是否存在硬件(包括网络)瓶颈问题,若不存在硬件瓶颈问题,则按照应用软件到系统软件(应用服务器、数据库服务器、操作系统)的顺序进行分析,确定瓶颈点。性能调优:同性能能力验证确定性能瓶颈分析方法。2

10、92.5 测试结果分析(2)硬件瓶颈分析方法 内存分析方法 处理器分析方法 磁盘I/O分析方法 网络分析方法302.6 编写测试报告测试指标:描述与测试场景对应的事务平均响应时间、事务吞吐率、资源消耗指标、运行的用户数等信息。结果分析与总结:根据测试目标,描述最后分析得到的结果,并给出相应的建议。313. 性能测试工具介绍 常见性能测试工具介绍 性能测试工具的选择323.1 常见性能测试工具CompuWare 公司的QALoad;Mercury Interactive公司的LoadRunner;Microsoft公司的WAS ;RadView公司的WebLoad ;IBM公司的RPT ;开源工

11、具:OPENSTA等。33QALoad1、简介 QALoad模拟成百上千的用户并发执行关键业务而完成对应用程序的测试,并针对所发现问题对系统性能进行优化,确保应用的成功部署。 QALoad不单单测试WEB应用,还可以测试一些后台的东西,比如SQL Server等,只要是它支持的协议,都可以测试。 2、特征1)自动捕获实际执行过程,自动生成测试脚本; 2)通过控制台控制各个Agent,进行脚本分配; 3)应用广泛,支持多种协议,如DB2、ODBC、WWW、Winsock等等。34WAS、简介:WAS-Web Application Stress是由微软的网站测试人员所开发,专门用来进行实际网站压

12、力测试的一套工具。透过这套功能强大的压力测试工具,可以使用少量的Client端计算机仿真大量用户上线。、特征:1)可以数种不同的方式建立测试指令:包含以手动、录制浏览器操作步骤、或直接录入网站的内容及录入其它测试程序的指令等方式;2)支持多种客户端接口; 3)支持多用户:利用多种不同的认证方式仿真实际的情况。 35WebLoad、简介:WebLoad是RadView公司推出的一个性能测试和分析工具,它让web应用程序开发者自动执行压力测试;WebLoad通过模拟真实用户的操作,生成压力负载来测试web的性能。、特征:)用户创建的是基于javascript的测试脚本,称为议程agenda,用它来

13、模拟客户的行为,通过执行该脚本来衡量web应用程序在真实环境下的性能。)如有需要可以在做负载测试的同时,使用服务器监控工具对服务器端的内容进行记录使负载测试更加全面。36RPT1、简介RPT-Rational Performance Tester是IBM基于Eclipse平台开发出来的最新性能测试解决方案。它可以有效地帮助测试人员和性能工程师验证系统的性能,识别和解决各种性能问题。2、特征 在为性能测试员和性能优化人员提供了前面所提到的各种性能测试能力以外,它还提供了可视化编辑器,一方面可以使新的测试人员可以在无需培训和编程的情况下,即可快速上手完成性能测试;另一方面,也为需要高级分析和自定义

14、选项的专家级测试人员,提供了对丰富的测试信息的访问和定制能力、自动检测和处理可变数据的能力。37OPENSTA1、简介OpenSTA- Open System Testing Architecture是专用于B/S结构的性能测试工具,可以模拟很多用户来访问需要测试的网站,它是一个功能强大、自定义设置功能完备的软件。2、特征1)免费、源代码开放;2)自定义功能设置大部分需要通过Script来完成,因此,在真正的使用这个软件之前,必须学习好它的Script编写。383.2 性能测试工具的选择 创建还是购买 如何选择一种商业工具393.2.1 创建还是购买创 建购 买能够开发出最适合应用的测试工具依

15、赖于工具本身提供的特性,较难扩展易于学习和使用依赖于工具的易用性和所提供的文档工具的稳定性和可靠性不足稳定性和可靠性优一定保证可形成组织特有的测试工具体系很难与其他产品集成403.2.2 如何选择一种商业工具需要注意的几点:工具是否支持被测系统运行的平台(软硬件环境、数据库环境);工具能否支持被测系统使用的协议;工具是否能够支持我们的特殊要求,如防火墙、负载均衡等;工具是否能够提供对我们关心的服务器类型计数器的监控;工具的价格。413.3 性能测试举例(1)某网站测试需求 可以支持100个并发用户执行各种查询操作,要求各查询操作的响应时间在5秒以内,服务器CPU利用率在80%以下。423.3

16、性能测试举例(2)性能需求分析 测试目的:验证是否满足应用要求(性能符合性验证)。 测试要素: 并发用户数-100。 测试功能-仪器信息与使用预约、大型精密仪器机组查询、交流平台搜索、会展信息搜索。 用户分布-平均分配。 数据量、软件、硬件环境委托方负责准备。 433.3 性能测试举例(3)测试策略 负载测试单项业务模式、混合业务模式。 说明:混合业务模式和实际应用是非常接近的,需要进行测试。 对于单独业务模式,虽然实际情况中很难出现,但这是一种极限的情况,也应该把这种情况下的测试结果呈现给用户。443.3 性能测试举例(4)测试场景 场景1:100个用户同时执行仪器信息与使用预约操作。 场景2:100个用户同时执行大型精密仪器机组查询操作。 场景3:100个用户同时执行交流平台搜索操作。 场景4:100个用户同时执行会展信息搜索操作。 场景5:100个用户同时执

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论