软件性能测试总结.doc

上传人:F****n 文档编号:101072645 上传时间:2019-09-26 格式:DOC 页数:22 大小:119.50KB
返回 下载 相关 举报
软件性能测试总结.doc_第1页
第1页 / 共22页
软件性能测试总结.doc_第2页
第2页 / 共22页
软件性能测试总结.doc_第3页
第3页 / 共22页
软件性能测试总结.doc_第4页
第4页 / 共22页
软件性能测试总结.doc_第5页
第5页 / 共22页
点击查看更多>>
资源描述

《软件性能测试总结.doc》由会员分享,可在线阅读,更多相关《软件性能测试总结.doc(22页珍藏版)》请在金锄头文库上搜索。

1、第一章 软件性能概述1.1软件性能基础1.1.1软件性能的概念软件性能是与软件功能相对应的一种非常重要的非功能特性,表明了软件系统对时间及时性与资源经济性的要求。对于一个软件系统,运行时执行速度越快、占用系统存储资源及其他资源越少,则软件性能越好。软件性能与软件功能是软件能力的不同体现,以一个人的工作能力来比喻,“功能”是某个人能够做的事情,“性能”指此人完成这件事情的效率。在功能相同的情况下,性能是衡量事情完成效果的一个重要因素。1.1.2 不同角色对软件性能的理解1)从系统用户角度看软件性能系统用户指实际使用系统功能的人员。系统用户看到的软件性能就是软件的响应时间,即当用户在软件中执行一个

2、功能操作后,到软件把本次操作的结果完全展现给用户所消耗的时间。系统响应时间的影响因素有:功能的粒度、客户端网络情况、服务器当前忙闲情况等。从系统用户角度看,软件响应时间越短,系统性能越好。2)从系统运维人员角度看软件性能系统运维人员指负责软件系统运行维护的工作人员。运维人员在关注系统响应时间的同时,还需要关注系统的资源利用率、系统最大容量、系统访问量变化趋势、数据量增长幅度、系统扩展能力等,并在此基础上制定合理的系统维护计划,以保障系统能够为用户提供稳定可靠的持续服务。运维人员关注的性能问题:运维人员关心的问题软件性能描述服务器的资源使用情况合理吗资源利用率应用服务器和数据库服务器的资源使用状

3、况合理吗资源利用率系统是否能够实现扩展系统可扩展性系统最多能支持多少用户的访问系统容量系统最大的业务处理量是多少系统容量系统性能可能的瓶颈在哪里系统可扩展性更换哪些设备能够提高系统性能系统可扩展性系统能否支持7X24小时的业务访问系统稳定性3)从系统开发人员角度看软件性能系统开发人员指系统软件的设计和开发人员。开发人员关注的性能问题:开发人员关心的问题问题所属层次架构设计是否合理系统架构数据库设计是否存在问题数据库设计代码是否存在性能方面的问题代码系统中是否有不合理的内存使用方式代码系统中是否存在不合理的线程同步方式设计与代码系统中是否存在不合理的资源竞争设计与代码1.1.3 软件性能的重要性

4、保障软件系统的性能具有十分重要的意义,具体体现在以下方面:(1)系统性能越好,执行速度越快,用户使用系统的体验就越好(2)系统性能越好,用户的等待时间越少,有利于提高软件操作效率。(3)系统性能越好,处理能力越大,单位时间处理业务量越大。(4)系统性能越好,在大量用户访问系统时系统稳定性越好,能够提供持续服务。(5)系统性能扩展性越好,越容易提升系统的处理能力,以适应更多的访问需求。能意味着重大的销售损失或用户流失,保持系统系统性能对于软件系统的运营企业具有非常重要性能的的意义,系统下降可良好的系能对于提高用户体验、提升站点声誉、提升客户忠诚度、增加系统收入等都具有重要作用。1.2 常用性能指

5、标1.2.1 响应时间响应时间指用户感受到的软件系统为其服务所耗费的时间。一般情况下,需要定义三种情况下的系统的响应时间:(1)闲时响应时间:指系统中访问用户数量较少的情况下,用户访问系统的响应时间,也可理解为在不受其他用户干扰的情况下,系统应该具有的性能表现。(2)忙时响应时间:指在系统处理正常访问用户量的情况下,用户访问系统的响应时间。该指标定义了系统在正常访问状态下应该具有的响应时间要求,体现了系统在正常访问状态下的性能表现。(3)峰时响应时间:指在系统具有大量并发用户的情况下,用户访问系统的响应时间。该指标定义了系统在承载最大并发用户情况下应该具有的响应时间要求,体现了系统压力负荷最大

6、情况下的性能表现,也可以理解为系统最大响应时间。1.2.2 并发用户数并发用户数指系统能够同时处理的用户请求的数目,也可以理解为同时向系统提交请求的用户数目。注册用户数指系统中全部注册用户的数量;在线用户数指在相同时间段内登录了系统,并在系统中进行操作的用户数量。平均并发用户数:指在系统正常访问量情况下的并发用户数。最大并发用户数:指在峰值访问情况下的并发用户数。如何判断是否达到峰值访问情况:(1)系统响应时间达到了峰值响应时间,即系统的响应时间已经达到了用户能够接收的上限。(2)系统服务器资源利用率已经达到了上限,即服务器的CPU利用率、内存利用率等指标已经达到了需求规定的上限。(3)系统请

7、求成功率,即成功请求数/总请求数。当系统压力过大时,某些用户请求就会执行失败,如果失败率过高,就说明系统已经达到了处理能力的上限,所以可以根据成功率来判断是否已经达到了最大并发用户数。平均并发用户数仅反映了系统某个时刻的用户访问情况,并不反映系统的性能情况;而最大并发用户数反映了系统的处理能力,往往作为一项重要的性能指标在需求分析时进行定义。1.2.3 吞吐量吞吐量指单位时间内系统处理的客户请求数量,体现系统的整体处理能力。系统吞吐量越大,说明系统性能越好。衡量吞吐量的常用指标内包括:RPS:请求数/秒,描述系统每秒能够处理的最大请求数量。PPS:页面数/秒,描述系统每秒能够现实的页面数量。P

8、V:页面数/天,描述系统每天总的Page View数量。TPS:事务/秒,描述系统每秒能够处理的事务数量。QPS:查询/秒,描述系统每秒能够处理的查询请求数量。1.2.4 服务器性能计数器服务器性能计数器指服务器或操作系统性能的一些数据指标,在性能测试中发挥着监控和分析的关键作用。常用的操作系统性能计数器包括System Load、进程与线程数、使用内存数、CPU使用率、磁盘I/O、网络I/O等。资源利用率反映的是在一段时间内服务器资源平均被占用的情况,能够更加直观的反映系统当前的运行情况,例如CPU利用率如果达到80%,就说明当前CPU基本已经耗尽,系统处于满载状态。所以在进行性能需求分析时

9、,往往通过资源利用率指标来定义服务器性能要求。第2章 软件性能测试基础2.1 软件性能测试的概念 定义:狭义的软件性能测试指为验证软件性能指标、评估系统服务能力、推荐系统软硬件配置、完成系统性能优化等而开展的测试活动;广义的软件性能测试是指测试过程中需要相关性能测试方法配合完成的系统测试活动,包括可靠性测试、可恢复性测试、稳定性测试、兼容性测试、可扩展性测试等。2.2 软件性能测试的目标目标分为4个方面:能力验证、缺陷发现、能力规划、性能优化1、能力验证分为3个层面: 验证性能指标与需求的符合情况软件系统性能测试最主要的目标:验证软件性能是否符合软件需求文档中的性能指标要求,是否符合预定的设计

10、目标。 获得系统服务能力评价系统可靠性6个质量特性:功能性、可靠性、易用性、效率性、维护性、可移植性可靠性一般用平均无故障时间(MTTF)来度量,三个子特性:成熟性、容错性、可恢复性。2、缺陷发现缺陷发现性能测试的主要目的是:通过性能测试的手段来发现系统中存在的缺陷,并不需要验证性能指标是否满足需求的要求。3、 能力规划特点:1、规划能力是一种探索新的测试 2、配置规划可用于了解系统的性能以及获得扩展性能的方法。4、性能优化 性能条有的前提:进行性能瓶颈定位 特点:1、确定基准环境、基准负载和基准性能指标 2、调整系统运行环境和实现方法、执行测试2.3常用性能测试方法性能测试名称 定义说明基准

11、测试通过设计科学的测试方法、测试工具和测试系统,实现对一类测试对象的某种性能指标进行定量的和可对比的测试。主要目的是检验系统性能与相关标准的符合程度压力测试通过对软件系统不断施加压力,识别系统性能拐点,从而获得系统提供的最大服务级别的测试活动。主要目的是检查系统处于压力情况下应用的表现。负载测试通过在被测系统中不断增加压力,直到达到性能指标极限要求。主要目的是找到特定环境下系统处理能力的极限。并发测试并发测试主要指当测试多用户并发访问同一个应用、模块、数据时是否产生隐藏的并发问题,如内存泄露、线程锁、资源争用问题。主要目的并非为了获得性能指标,而是为了发现并发引起的问题。疲劳测试通过让软件系统

12、在一定访问量情况下长时间运行,以检验系统性能在多长时间后会出现明显下降。主要目的是验证系统运行的可靠性。数据量测试通过让软件在不同数据量情况下运行,以检验系统性能在各种数据量情况下的表现。主要目的是找到支持系统正常工作的数据量极限。配置测试通过对被测系统的软/硬件环境的调整,了解各种不同环境对系统性能影响的程度,从而找到系统各项资源的最优分配原则。主要目的是了解各种不同因素对系统性能影响的程度,从而判断出最值得进行的调优操作。基准测试三大原则:可测量、可重复、可对比2.4 软件性能测试范围(1)服务器性能测试(2)网络性能测试(3)客户端性能测试2.5 性能测试面临的问题主要包括:1、没有明确

13、的性能指标需求 2、不切实际的性能指标要求 3、在开发环境下做性能测试 4、走形式地进行性能测试 5、只测试、不分析 6、只测试、不优化 7、性能测试缺乏方法论的指导 8、缺乏高水平的性能测试人才第三章 性能测试的组织管理3.1 软件性能测试过程模型非经典的软件开发模型:瀑布模型、螺旋模型、增量模型、喷泉模型、原型模型、敏捷开发软件测试相关模型:V模型、W模型、H模型、X模型Evaluate(评估)Develop Test Assets(开发测试资产)BaseLine &Benchmark(基线和基准)Analysis ResultValidate regs(使合法化,优化)Complete ProjectTestTune System(调制度)Criteria Met (标准满足)Develop Exploratory (开发探索性数据)Re-Bench3.1.1 Segue性能测试过程模型 Segue性能测试模型3.1.2 HP性能测试过程模型制定测试计划设计性能测试方案录制VU脚本创建测试场景执行性能测试结果分析 HP性能测试过程模型3.1.3 PTGM(Performance Test General Model)性能测试过程模型4.。测试设计与开发3.测试计划5.测试执行与管理2.测试工具引入6.测试分析1.

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

当前位置:首页 > 办公文档 > 教学/培训

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