软件性能测试过程详解与案例剖析

上传人:s****a 文档编号:203978491 上传时间:2023-04-25 格式:DOCX 页数:9 大小:21.69KB
收藏 版权申诉 举报 下载
软件性能测试过程详解与案例剖析_第1页
第1页 / 共9页
软件性能测试过程详解与案例剖析_第2页
第2页 / 共9页
软件性能测试过程详解与案例剖析_第3页
第3页 / 共9页
资源描述:

《软件性能测试过程详解与案例剖析》由会员分享,可在线阅读,更多相关《软件性能测试过程详解与案例剖析(9页珍藏版)》请在装配图网上搜索。

1、软件性能测试过程详解与案例剖析第1章性能测试基本概念1.1软件性能从用户的角度,软件性能就是软件对用户操作的响应时间。从管理员的角度,软件性能首先表现在响应时间上。还包括资源利用率、可扩展性、系 统容量(并发等)和系统稳定性等。为了保证系统的稳定运行和持续的良好性能。对于开 发人员而言,最想知道“如何通过调整设计和代码实现,或是如何通过调整系统设置等方法 提高软件的性能表现”和“如何发现并解决软件设计和开发过程中产生的由于过多用户访问 引起的缺陷”,也就是性能瓶颈和大量用户访问时的缺陷。关注的是系统架构、数据库设计、 代码和设计。所以在性能测试时,既要关注响应时间,还要关注软件可扩展性、并发能

2、力等指标,还 要为性能问题定位。1.2术语1、响应时间系统响应时间为应用系统从发出请求开始到客户端接收到响应所消耗的时间。合理的 响应时间取决于实际用户的需求。2、并发用户数有两种理解,一种是同一时间段访问系统的用户数量,一种是服务器所能承受的压力(同 时发出请求的客户)。在性能测试中我们更关注前者,业务并发用户数。公式c=nL/T,计算平均并发用户数,还可用c=n/10还做简单的估计。n为每天访问系统 的用户数。还可以通过分析服务器的日志来了解用户的使用状态。3、吞吐量单位时间内系统处理的客户请求的数量,请求数/秒,页面数/秒,访问数/天,业务数/ 小时,字节数/天。可用于衡量是否达到了预期

3、设计目标,协助分析性能瓶颈。4、性能计数器描述服务器或操作系统性能的一些数据指标。例如,内存数、进程时间。用于监控和分 析。常与资源利用率进行横向对比,例如cpu占用率68%。5、思考时间(休眠时间)用户在进行操作时,每个请求之间的间隔时间。1.3方法1、SEI负载测试计划过程关注于负载测试计划的方法,目标是产生清晰、易理解、可验证的负载测试计划。关注 目标、用户、用例、生产环境、测试环境和测试场景。2、RBI方法rapid bootleneck identify用于快速识别系统性能瓶颈的方法。3、性能下降曲线分析法描述性能随用户数量增长而出现下降趋势的曲线。4、LoadRunner的性能测试

4、过程包括计划测试、测试设计、创建VU(virtual user)脚本、创建测试场景、运行测试场景、 分析结果。5、Segue提供的性能测试过程先确定性能基线,然后设定可接受的性能目标,用不同的并发用户数等重复测试。适合 性能调优和性能优化,通过不断的try-check过程,逐渐找到可能导致性能瓶颈的地方并对 其优化。6、PTGM模型performance testing general model。分为测试前期准备、测试工具引入、测试计划、测试 设计与开发、测试执行和管理以及测试分析。第2章性能测试的应用领域2.1性能测试的方法1、性能测试(performance testing)模拟生产运行

5、的业务压力量和使用场景组合,测试系统的性能是否满足生产性能的要 求。2、负载测试(load testing)通过在系统上不断增加压力,直到性能指标超过预定或某种资源的使用达到饱和。找到 系统的处理极限。3、压力测试(stress testing)测试系统在一定饱和状态下,系统能够处理的会话能力,以及系统是否会出现错误。常 用于测试系统的稳定性。4、配置测试(configuration testing)通过对被测软件的软/硬件环境的调整,了解各种不同环境对系统性能的影响的程度, 从而找到系统各项资源的最优分配原则。5、并发测试(concurrency testing)模拟用户的并发访问,测试多用

6、户并发访问同一个应用、同一个模块或者数据记录时是 否存在死锁或者其他性能问题。关注内存是否有太多临时对象、超过设计生命周期的对象、数据库死锁、经常出现长事 务、是否出现线程/进程同步失败、资源争用导致死锁、未处理异常导致死锁。6、可靠性测试(reliability testing)通过给系统加载一定的业务压力的情况下,让应用系统持续运行一段时间,测试系统在 这种条件下能否稳定运行。7、实效恢复测试(failover testing)针对冗余备份和负载均衡的系统。检验如果系统局部发生故障,用户是否能够继续使用 系统,如果这种情况发生,用户将受多大程度影响。2.2应用领域分析1、能力验证perfo

7、rmance testing,reliability testing,stress testing,failover testing2、能力规划load testing,configuration testing,stress testing3、性能调优configurationg testing,load testing,stress testing,failover testing4、缺陷发现concurrency testing,stress testing,failover testing第3章性能计数器及性能分析方法用来衡量被测系统当前的状况和进行性能测试结果分析。可在操作系统级、应

8、用服务 器级和数据库级别上查看和记录性能计数器的数值。3.1操作系统计数器及分析1、WindowsMemory:available mbytes,pages/sec,pages read/sec,page faults/sec,cache bytes Process: %processor time,page faults/sec,work set,private bytes Processor:%processor time,%user time, %privileged time,%dpc timePhysical Disk:%disk time,average disk queue le

9、ngth,average disk read/write queue length,d isk reads(writes)/sec,average disk sec/read,average disk sec/transfer Network Interface:bytes tot al/secSystem:%total processor time,file data operation/sec,processor queue length2、unix3、内存分析方法用于分析系统有无遇到内存瓶颈,是否需要通过增加内存等手段提高系统性能表 现。首先查看 memory/available mby

10、tes; 注意 pages/sec,pages read/sec,page faults/sec(反映进行磁盘交换的频率);根据physical disk分析。4、处理器分析方法先看system%Total processor timeM后看每个cpu的指标,最后分析。5、磁盘I/O分析方法计算每个磁盘的I/O数;然后与processorprivileged time合并分析;最后根据 disk sec/transfer 分析。6、进程分析方法察看%processor time,反映进程消耗的处理其时间;然后查看每个进程产生的页面失效, 对于产生最多页面失效的进程要重点分析;了解进程的proc

11、ess/private bytes,看是否存在内存 泄露。7、网络分析方法network interfacebytes total/sec为发送和接收字节的速率,与当前带宽进行比较。3.2应用服务器计数器1、IIS2、J2EE应用服务器计数器weblogic:JVM:heap size;heap freeJDBC connection pool:waiting for connection current count;connection total count;max ca pacity;active connections current countexecute queue:execut

12、e thread current idle count;pending request oldest time;serviced reque st oldest time;serviced request total count;pending request current count;3、数据库计数器第4章性能测试工具原理4.1性能测试工具模型性能测试工具只能帮助您实施性能测试,并不能帮助您完成性能测试的需求;性能测试工具能够根据您的要求以各种方式提供报表,这些报表是分析的基础。性能测试工具一般包括虚拟用户脚本产生器;压力产生器;用户代理;压力调度和控 制系统;压力结果分析工具。4.2性能

13、测试脚本录制时的协议类型对于j2ee,建议选择http/https协议。4.3性能测试工具的选择与评估工具支持被测系统运行的平台吗?支持被测系统使用的协议吗?能够支持我们的特殊要求?能够提供对我们关心的服务器、应用服务器或是数据库类型计数器的监控吗?工具使用的脚本语言功能完善吗?常用的包括 Loadrunner 和 silk performer o第5章性能测试的组织5.1人员构成经理、测试设计、测试开发、测试执行、测试分析、支持5.2过程模型基于ATLM和TMap模型。1、前期准备保证系统稳定、建立合适的测试团队、测试工具需求确认。2、测试工具引入选择;培训;应用过程。3、测试计划测试目的(

14、应用领域,测试目标);用户活动剖析与业务建模(系统日志与用户调查 分析);确定性能目标;制定计划。4、测试设计与开发测试环境设计;测试场景设计;测试用例设计;脚本和辅助工具开发活动。5、测试执行与管理建立测试环境;部署测试脚本和测试场景;执行测试和记录结果。6、测试分析根据测试的目的和目标给出测试结论。第8章案例三某通信企业的web业务系统性能测试8.1背景该系统用于管理企业的备品和备件,包括网络设备的库存管理、库存流转、备品备件的 查询统计。测试的主要目的是验证系统的性能是否达到用户要求。8.2项目特点采用J2ee,tomcat,struts+ejb+hibernate。一台unix服务器用

15、作数据库服务器,一台unix 服务器用作应用服务器。性能体现主要是响应时间。协议为http/httpso8.3测试过程1、前期准备5人:一个数据库工程师、一个性能测试设计和分析人员、三名性能测试开发和实施 人员。 工具需要支持Http/https协议,监控unix/windows服务器的主要性能计数器值,支 持oracle数据库计数器值监控,支持tomcat应用服务器的jvm内存使用状况监控。2、测试工具引入选择LoadRunnder; tomacat的jvm自行开发工具来实现。3、测试计划(1) 测试目的:验证系统是否达到预期性能指标(2) 用户活动剖析与业务建模:得到典型用户活动分析表,并

16、发用户数和吞吐量用户活动分析表业务名称实际使用用户数量 业务发生数(笔/天)备件信息2001500库存流转-申请单2004000库存流转-审批1004000库存流转-借用1503000库存流转-还库1503000库存流转-报废100200查询统计-备件查询2005000查询统计-申请单查询 1002000导入备件Excel文件2080平均每天该系统的用户为600;平均每个用户每天使用4小时;平均每个用户进行500 个业务操作;所以并发用户数:600*4/8=300吞吐量:300*500/(4*60*60)=10,浏览数/秒(3) 确定性能目标:得到性能需求描述详细描述在典型数据量,页面响数据规

17、模备件500000条记录,应时间不超过10秒半年流转数据750000条记录系统能够稳定运行压力条件:高于实际系统运行压力1倍系统稳定判定条件:测试中,各进程内存没有明显变化测试中,响应时间和业务能力没有明显变化持续测试时间72小时典型规模的excel备文件规模20M,包含记录50000条件文件导入时间性能在10秒的响应时间下,以响应时间10秒作为负载测试的结束条件,能承受的用户数获得系统能承受的最大用户数量在典型用户数量下,cpu平均使用率不高于75%,内存使用率不高于75%;在稳定性测试的压力条件下,cpu使用率不高于95%,内存使用率不高于90%。(4) 制定时间计划。子项目名称 子项目起

18、止时间里程碑成果参与者测试环境和场景设计2005.3.1-2005.3.2测试环境文档、测试场景文档测试用例设计和脚本开发2005.3.3-2005.3.10测试用例文档、测试脚本测试环境构建2005.3.3-2005.3.5 测试环境、测试环境描述文档测试工具和场景部署2005.3.11-2005.3.12测试工具部署说明、场景部署说明执行性能测试2005.3.13-2005.3.15测试结果记录稳定性测试2005.3.16-2005.3.20测试结果记录测试结果分析和报告编写2005.3.21-2005.3.23测试报告4、测试设计与开发(1)测试环境设计由于本测试主要与于验证系统在实际环

19、境中的性能能力,因此尽可能选择接近实际环 境的配置。测试环境设备硬件配置软件配置数据库服务器 SUN V880服务器(1台) Solaris 84CPU 8GB 内存 磁盘阵列 Oracle 9.2.0.1服务器性能计数器脚本应用服务器SUN V880服务器(1台) Solaris 84CPU 8GB内存 磁盘阵列 Tomcat 5服务器端应用服务器性能计数器脚本性能测试 Console PC 机(1 台)WindowsXP+SP1CPU2.4GHZ 512MB 内存 LoadRunner Controller 40GB 硬盘LoadRunner AnalysisMicrosoft Offic

20、e负载产生设备 PC机(5台)WindowsXP+SP1CPU2.4GHZ 512MB 内存LoadRunner Agent40GB硬盘基础数据量在需求中已有描述(2)测试场景设计设计并发用户数300,每个VU操作之间的时间间隔为30秒典型测试场景场景名称场景业务及分配比例测试指标性能计数器系统应用典型用户分配:备件信息100申请单100页面数据库服务器常用性能计数器响应 应用服务器cpu使用率场景1备件查询100小于 应用服务器JVM可用内存时间 应用服务器内存使用率用户增长模式:10秒响应时间ramp up,每15秒增加4个 迭代时间间隔30秒运行时间30分钟系统用户分配:页面数据库服务器

21、常用性能计数器应用申请单100响应应用服务器cpu使用率典型审批100时间应用服务器内存使用率场景2还库50报废10小于 应用服务器JVM可用内存 10秒响应时间用户增长模式:ramp up,每15秒增加4个迭代时间间隔30秒运行时间30分钟系统 用户分配:应用申请单100页面 数据库服务器常用性能计数器 响应 应用服务器cpu使用率典型 审批100 时间 应用服务器内存使用率场景3 备件查询100 小于 应用服务器JVM可用内存报废1010秒响应时间用户增长模式:ramp up,每15秒增加4个迭代时间间隔30秒运行时间30分钟 稳定用户分配: 页面数据库服务器常用性能计数器性测 典型场景3

22、用户数 响应 应用服务器cpu使用率试场 的两倍 时间 应用服务器内存使用率景 备件查询100 小于 应用服务器JVM可用内存运行时间72小时10秒 响应时间数据用户分配:页面 数据库服务器常用性能计数器导入 导入Excel文件10 响应 应用服务器cpu使用率场景申请单100时间 应用服务器内存使用率审批100 小于 应用服务器JVM可用内存用户增长模式:10秒响应时间ramp up,每15秒增加4个迭代时间间隔30秒运行时间30分钟(3) 测试用例设计将用户业务操作形成更详细的用例步骤。 审批业务:用例编号:TC_ _xxxx_xxx-1用例条件:用户已经登录,具有审批的权限 用户步骤和验证方法:1、用户单击“库存流转”链接,进入库存流转页面验证:页面出现库存流转提示字符串2、用户在页面左侧树试图上单击“审批”链接,进入审批页面验证:页面上出现审批单:列表提示字符串3、用户在页面给出的等待审批的申请单列表中选择最上方的一个,单击审批按钮,进入审批页面验证:给出选中审批单信息,页面上出现被选中审批单的编号4、用户输入审批信息,单击通过按钮验证:页面上出现审批通过提示字符串(4) 脚本和辅助工具开发活动。5、测试执行与管理建立测试环境;部署测试脚本和测试场景;执行测试和记录结果。6、测试分析根据测试的目的和目标给出测试结论。

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!