性能测试指标及其注意地方

发表于:2008-10-10 17:02

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:未知    来源:网络转载

分享:

  ·应用在网络上性能的测试

  应用在网络上性能的测试重点是利用 成熟先进的自动化技术进行网络应用性能监控、网络应用性能分析和网络预测。

  网络应用性能分 析

  网络应用性能分析的目的是准确展示网络带宽、延迟、负载和TCP端口的变化是如何影响用户的响应时间的。利 用网络应用性能分析工具,例如Application Expert,能够发现应用的瓶颈,我们可知应用在网络上运行时在每个阶段发生的应用行为,在应用线程级分析应用的问题。可以解决多种问题:客户端是否对 数据库服务器运行了不必要的请求?当服务器从客户端接受了一个查询,应用服务器是否花费了不可接受的时间联系数据库服务器?在投产前预测应用的响应时间; 利用Application Expert调整应用在广域网上的性能;Application Expert能够让你快速、容易地仿真应用性能,根据最终用户在不同网络配置环境下的响应时间,用户可以根据自己的条件决定应用投产的网络环 境。

  网络应用性能监控

  在系统试运行之后,需要及时准确地了解网络 上正在发生什么事情;什么应用在运行,如何运行;多少 PC正在访问LAN或WAN;哪些应用程序导致系统瓶颈或资源竞争,这时网络应用性能监控以及网络资源管理对系统的正常稳定运行是非常关键的。利用网络应 用性能监控工具,可以达到事半功倍的效果,在这方面我们可以提供的工具是Network Vantage。通俗地讲,它主要用来分析关键应用程序的性能,定位问题的根源是在客户端、服务器、应用程序还是网络。在大多数情况下用户较关心的问题还 有哪些应用程序占用大量带宽,哪些用户产生了最大的网络流量,这个工具同样能满足要求。

  网络预 测

  考虑到系统未来发展的扩展性,预测网络流量的变化、网络结构的变化对用户系统的影响非常重要。根据规划数据 进行预测并及时提供网络性能预测数据。我们利用网络预测分析容量规划工具PREDICTOR可以作到:设置服务水平、完成日网络容量规划、离线测试网络、 网络失效和容量极限分析、完成日常故障诊断、预测网络设备迁移和网络设备升级对整个网络的影响。

  从网络管理软 件获取网络拓扑结构、从现有的流量监控软件获取流量信息(若没有这类软件可人工生成流量数据),这样可以得到现有网络的基本结构。在基本结构的基础上,可 根据网络结构的变化、网络流量的变化生成报告和图表,说明这些变化是如何影响网络性能的。 PREDICTOR提供如下信息:根据预测的结果帮助用户及时升级网络,避免因关键设备超过利用阀值导致系统性能下降;哪个网络设备需要升级,这样可减少 网络延迟、避免网络瓶颈;根据预测的结果避免不必要的网络升级。

  ·应用在服务器上性能的测试

  对于应用在服务器上性能的测试, 可以采用工具监控,也可以使用系统本身的监控命令,例如Tuxedo中可以使用Top命令监控资源使用情况。实施测试的目的是实现服务器设备、服务器操作 系统、数据库系统、应用在服务器上性能的全面监控,测试原理如下图。

  UNIX资源监控指标和描 述

  监控指标 描述

  平均负载 系统正常状态下,最后60秒同步进程的平均个数

  冲突率 在以太网上监测到的每秒冲突数

  进程/线程交换率 进程和线程之间每秒交换次数

  CPU利用率 CPU占用率(%)

  磁盘交换率 磁盘交换速率

  接收包错误率 接收以太网数据包时每秒错误数

  包输入率 每秒输入的以太网数据包数目

  中断速率 CPU每秒处理的中断数

  输出包错误率 发送以太网数据包时每秒错误数

  包输入率 每秒输出的以太网数据包数目

  读入内存页速率 物理内存中每秒读入内存页的数目

  写出内存页速率 每秒从物理内存中写到页文件中的内存页数

  目或者从物理内存中删掉的内存页数 目

  内存页交换速率 每秒写入内存页和从物理内存中读出页的个数

  进程入交换率 交换区输入的进程数目

  进程出交换率 交换区输出的进程数目

  系统CPU利用率 系统的CPU占用率(%)

  用户CPU利用率 用户模式下的CPU占用率(%)

  磁盘阻塞 磁盘每秒阻塞的字节数

  二、为什么进行性能测试?

  目的是验证软件系 统是否能够达到用户提出的性能指标,同时发现软件系统中存在的性能瓶颈,优化软件,最后起到优化系统的目的。

   包括以下几个方面

  1.评估系统的能力,测试中得到的负荷和响应时间数据可以被用于验证所计划的模型的能力,并 帮助作出决策。

  2.识别体系中的弱点:受控的负荷可以被增加到一个极端的水平,并突破它,从而修复体系的瓶颈 或薄弱的地方。

  3.系统调优:重复运行测试,验证调整系统的活动得到了预期的结果,从而改进性 能。

  检测软件中的问题:长时间的测试执行可导致程序发生由于内存泄露引起的失败,揭示程序中的隐含的问题或冲 突。

  4.验证稳定性(resilience)可靠性(reliability):在一个生产负荷下执行测试一 定的时间是评估系统稳定性和可靠性是否满足要求的唯一方法。

  性能测试类型包括负载测试,强度测试,容量测试 等

  负载测试:负载测试是一种性能测试指数据在超负荷环境中运行,程序是否能够承 担。

  强度测试: 强度测试是一种性能测试,他在系统资源特别低的情况下软件系统运行情况。

  容量测试:确定系统可处理同时在线的 最大用户数

  观察指标:

  性能测试主要是通过自动化的测试工具模拟多种正常、峰 值以及异常负载条件来对系统的各项性能指标进行测试。负载测试和压力测试都属于性能测试,两者可以结合进行。通过负载测试,确定在各种工作负载下系统的性 能,目标是测试当负载逐渐增加时,系统各项性能指标的变化情况。压力测试是通过确定一个系统的瓶颈或者不能接收的性能点,来获得系统能提供的最大服务级别 的测试。

  在实际中作中我们经常会对两种类型软件进行测试:bs和cs,这两方面的性能指标一般需要哪些内容 呢?

  Bs结构程序一般会关注的通用指标如下(简):

  Web服务器 指标指标:

  * 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 :尝试链接数;

  CS结构程序,由于一般软件后台通常为数据库,所以我们更注重数据库的测试指 标:

  * User 0 Connections :用户连接数,也就是数据库的连接数量;

  * Number of deadlocks:数据库死锁;

  * Butter Cache hit :数据库Cache的命中情况

  当然,在实际中我们还会察看多用户测试情况下的内存,CPU,系统资源调用情 况。这些指标其实是引申出来性能测试中的一种:竞争测试。什么是竞争测试,软件竞争使用各种资源(数据纪录,内存等),看他与其他相关系统对资源的争夺能 力。

  我们知道软件架构在实际测试中制约着测试策略和工具的选择。如何选择性能测试策略是我们在实际工作中需要 了解的。一般软件可以按照系统架构分成几种类型:

  c/s

   client/Server 客户端/服务器架构

  基于客户端/服务器的三层架构

  基于客户端/服 务器的分布式架构

  b/s

  基于浏览器/Web服务器的三层架 构

  基于中间件应用服务器的三层架构

  基于Web服务器和中间件的多 层架构

22/2<12
精选软件测试好文,快来阅读吧~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号