好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

软件性能测试总结.pdf

22页
  • 卖家[上传人]:飞***
  • 文档编号:53811002
  • 上传时间:2018-09-05
  • 文档格式:PDF
  • 文档大小:200.09KB
  • / 22 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 第一章软件性能概述1.1 软件性能基础1.1.1 软件性能的概念软件性能是与软件功能相对应的一种非常重要的非功能特性,表明了软件系 统对时间及时性与资源经济性的要求对于一个软件系统 ,运行时执行速度越快、 占用系统存储资源及其他资源越少,则软件性能越好 软件性能与软件功能是软件能力的不同体现,以一个人的工作能力来比喻, “功能”是某个人能够做的事情, “性能”指此人完成这件事情的效率在功能 相同的情况下,性能是衡量事情完成效果的一个重要因素1.1.2 不同角色对软件性能的理解1)从系统用户角度看软件性能 系统用户指实际使用系统功能的人员系统用户看到的软件性能就是软件的 响应时间,即当用户在软件中执行一个功能操作后,到软件把本次操作的结果完 全展现给用户所消耗的时间 系统响应时间的影响因素有: 功能的粒度、 客户端网络情况、 服务器当前忙 闲情况等从系统用户角度看,软件响应时间越短,系统性能越好 2)从系统运维人员角度看软件性能 系统运维人员指负责软件系统运行维护的工作人员 运维人员在关注系统响应时间的同时,还需要关注系统的资源利用率、 系统 最大容量、系统访问量变化趋势、数据量增长幅度、系统扩展能力等,并在此基 础上制定合理的系统维护计划,以保障系统能够为用户提供稳定可靠的持续服 务。

      运维人员关注的性能问题:运维人员关心的问题软件性能描述服务器的资源使用情况合理吗资源利用率应用服务器和数据库服务器的资源使用状况合理吗资源利用率系统是否能够实现扩展系统可扩展性系统最多能支持多少用户的访问系统容量系统最大的业务处理量是多少系统容量系统性能可能的瓶颈在哪里系统可扩展性更换哪些设备能够提高系统性能系统可扩展性系统能否支持7X24小时的业务访问系统稳定性3)从系统开发人员角度看软件性能 系统开发人员指系统软件的设计和开发人员开发人员关注的性能问题:开发人员关心的问题问题所属层次架构设计是否合理系统架构数据库设计是否存在问题数据库设计代码是否存在性能方面的问题代码系统中是否有不合理的内存使用方式代码系统中是否存在不合理的线程同步方式设计与代码系统中是否存在不合理的资源竞争设计与代码1.1.3 软件性能的重要性保障软件系统的性能具有十分重要的意义,具体体现在以下方面: (1)系统性能越好,执行速度越快,用户使用系统的体验就越好 (2)系统性能越好,用户的等待时间越少,有利于提高软件操作效率 (3)系统性能越好,处理能力越大,单位时间处理业务量越大 (4)系统性能越好,在大量用户访问系统时系统稳定性越好,能够提供持 续服务。

      (5)系统性能扩展性越好,越容易提升系统的处理能力,以适应更多的访 问需求 能意味着重大的销售损失或用户流失,保持系统系统性能对于软件系统的运 营企业具有非常重要性能的的意义,系统下降可良好的系能对于提高用户体验、 提升站点声誉、提升客户忠诚度、增加系统收入等都具有重要作用1.2 常用性能指标1.2.1 响应时间响应时间指用户感受到的软件系统为其服务所耗费的时间 一般情况下,需要定义三种情况下的系统的响应时间: (1)闲时响应时间 :指系统中访问用户数量较少的情况下,用户访问系统 的响应时间, 也可理解为在不受其他用户干扰的情况下,系统应该具有的性能表 现 (2)忙时响应时间 :指在系统处理正常访问用户量的情况下,用户访问系 统的响应时间该指标定义了系统在正常访问状态下应该具有的响应时间要求, 体现了系统在正常访问状态下的性能表现 (3)峰时响应时间 :指在系统具有大量并发用户的情况下,用户访问系统 的响应时间该指标定义了系统在承载最大并发用户情况下应该具有的响应时间 要求,体现了系统压力负荷最大情况下的性能表现,也可以理解为系统最大响应时间1.2.2 并发用户数并发用户数 指系统能够同时处理的用户请求的数目,也可以理解为同时向系 统提交请求的用户数目。

      注册用户数 指系统中全部注册用户的数量; 用户数 指在相同时间段内登录了系统,并在系统中进行操作的用户数量 平均并发用户数 :指在系统正常访问量情况下的并发用户数 最大并发用户数 :指在峰值访问情况下的并发用户数 如何判断是否达到峰值访问情况: (1)系统响应时间达到了峰值响应时间,即系统的响应时间已经达到了用 户能够接收的上限 (2)系统服务器资源利用率已经达到了上限,即服务器的 CPU利用率、内 存利用率等指标已经达到了需求规定的上限 (3)系统请求成功率,即成功请求数/总请求数当系统压力过大时,某些 用户请求就会执行失败, 如果失败率过高 ,就说明系统已经达到了处理能力的上 限,所以可以根据成功率来判断是否已经达到了最大并发用户数 平均并发用户数仅反映了系统某个时刻的用户访问情况,并不反映系统的性 能情况;而最大并发用户数反映了系统的处理能力,往往作为一项重要的性能指 标在需求分析时进行定义1.2.3 吞吐量吞吐量指单位时间内系统处理的客户请求数量,体现系统的整体处理能力 系统吞吐量越大,说明系统性能越好衡量吞吐量的常用指标内包括: RPS :请求数 /秒,描述系统每秒能够处理的最大请求数量。

      PPS :页面数 /秒,描述系统每秒能够现实的页面数量 PV :页面数 /天,描述系统每天总的Page View数量 TPS :事务 /秒,描述系统每秒能够处理的事务数量 QPS :查询 /秒,描述系统每秒能够处理的查询请求数量1.2.4 服务器性能计数器服务器性能计数器指服务器或操作系统性能的一些数据指标,在性能测试中 发挥着监控和分析的关键作用常用的操作系统性能计数器包括System Load、 进程与线程数、使用内存数、CPU使用率、磁盘 I/O、网络 I/O 等 资源利用率反映的是在一段时间内服务器资源平均被占用的情况,能够更加 直观的反映系统当前的运行情况,例如CPU利用率如果达到80%,就说明当前 CPU基本已经耗尽,系统处于满载状态所以在进行性能需求分析时,往往通过 资源利用率指标来定义服务器性能要求第 2 章软件性能测试基础2.1 软件性能测试的概念定义:狭义的软件性能测试指为验证软件性能指标、评估系统服务能力、 推荐系统软硬件配置、 完成系统性能优化等而开展的测试活动;广义的软件性能 测试是指测试过程中需要相关性能测试方法配合完成的系统测试活动,包括可靠 性测试、可恢复性测试、稳定性测试、兼容性测试、可扩展性测试等。

      2.2 软件性能测试的目标目标分为 4 个方面:能力验证、缺陷发现、能力规划、性能优化 1、能力验证分为 3 个层面: 验证性能指标与需求的符合情况 软件系统性能测试最主要的目标: 验证软件性能是否符合软件需求文档中的 性能指标要求,是否符合预定的设计目标 获得系统服务能力 评价系统可靠性 6 个质量特性:功能性、可靠性、易用性、效率性、维护性、可移植性 可靠性一般用平均无故障时间(MTTF)来度量,三个子特性:成熟性、容 错性、可恢复性 2、缺陷发现 缺陷发现性能测试的主要目的是: 通过性能测试的手段来发现系统中存在的 缺陷,并不需要验证性能指标是否满足需求的要求 3、 能力规划 特点: 1、规划能力是一种探索新的测试2、配置规划可用于了解系统的性 能以及获得扩展性能的方法 4、性能优化 性能条有的前提:进行性能瓶颈定位 特点:1、确定基准环境、基准负载和基准性能指标2、调整系统运行环 境和实现方法、执行测试2.3 常用性能测试方法性能测试名称定义说明基准测试通过设计科学的测试方法、测试工具和测试系统,实现对一类测试对象的某种性能指标 进行定量的和可对比的测试主要目的是检验系统性能与相关标准的符合程度压力测试通过对软件系统不断施加压力,识别系统性能拐点,从而获得系统提供的最大服务级别的测试活动。

      主要目的是检查系统处于压力情况下应用的表现负载测试通过在被测系统中不断增加压力,直到达到性能指标极 限要求主要目的是找到特定环境下系统处理能力的极限并发测试并发测试主要指当测试多用户并发访问 同一个应用、模块、数据时是否产生隐藏的并发问题,如内存泄露、线程锁、资源争用问题主要目的并非为了获得性能指标,而是为了发现并发引起的问题疲劳测试通过让软件系统在一定访问量情况下长时间运行 ,以检验系统性能在多长时间后会出现明显下降主要目的是验证系统运行的可靠性 数据量测试通过让软件在不同数据量 情况下运行,以检验系统性能在各种数据量情况下的表现主要目的是找到支持系统正常工作的数据量极限配置测试通过对被测系统的软/硬件环境的调整,了解各种不同环境对系统性能影响的程度,从而找到系统各项资源的最优分配原则主要目的是了解各种不同因素对系统性能影响的程度,从而判断出最值得进行的调优操作基准测试三大原则:可测量、可重复、可对比2.4 软件性能测试范围(1)服务器性能测试 (2)网络性能测试 (3)客户端性能测试2.5 性能测试面临的问题主要包括: 1、没有明确的性能指标需求 2、不切实际的性能指标要求 3、在开发环境下做性能测试 4、走形式地进行性能测试 5、只测试、不分析 6、只测试、不优化 7、性能测试缺乏方法论的指导 8、缺乏高水平的性能测试人才第三章性能测试的组织管理3.1 软件性能测试过程模型非经典的 软件开发模型 :瀑布模型、螺旋模型、增量模型、喷泉模型、原型 模型、敏捷开发 软件测试相关模型 :V模型、 W 模型、 H 模型、 X模型3.1.1 Segue性能测试过程模型Segue性能测试模型3.1.2 HP性能测试过程模型HP 性能测试过程模型制定测试计划设计性能测试方案录制 VU 脚本创建测试场景执行性能测试结果分析Evaluate(评估 ) Develop Test Assets (开发测试资产 ) BaseLine (2).块注释。

      “/* ” , “*/ ”7.5.检查点相关设置1.检查点分类 (1)文本检查点 文本检查点函数是通过Web_reg_find()来实现的, Web_reg_find()是一个注 册型函数,注册函数一定要写在请求前,所以该函数一定出现在检查文本之前 文本检查点的两种形式: 代码一: web_reg_find(“Text= ”,LAST); 代码二: web_reg_find(“Text= ”,LAST); If( ) lr_output_message(“”); else lr_output_message(“”); (2)自动检查点 按 F4|ContentCheck或 Run-time settings|ContentCheck (3)图片检查点 Web_image_check( “函数标题”, “ALT= 图片说明” , “LAST ”) 检查点的设置技巧: 检查点可以是常量, 也可以是变量;检查点可以是文本、 图像文件,也可以是数据库记录等2.事务设置 (1).事务的开始函数是lr_start_transaction(),选择新事务起点,鼠标右键 |Insert|start Transaction (2).事务的开始函数是lr_end_transaction(),选择新事务结束点,鼠标右键 |Insert|End Transaction (3).事务的状态 LoadRunner_PASS 事务是以 PASS 状态通过的,该事务做了正确的事情。

      LoadRunner_FAIL 事务是以 FAIL状态通过的,该事务做失败的事情 LoadRunner_AUTO 事务的状态是由系统判断的,结果为PASS/FAIL/STOP 3. 参数化 参数化包含以下两个任务: (1)在脚本中用参数取代常量值; (2)设置参数 的属性以及数据源 4. 关联设置 关 联 主 要 有 手 动 关 联 和 自 动 关 联 手 动 关 联 中 , 关 联 函 数 web_reg_save_param是一个注册型函数 5. 集合点设置 集合点通过在脚本中插入lr_rendezvou。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.