从现在开始好好学习

学习笔记-性能测试基础

上一篇 / 下一篇  2013-09-26 14:45:16 / 个人分类:性能测试基础

1.什么是软件性能:在一定的负载情况下,系统的响应时间等特性是否满足特定的性能需求。从用户的角度,软件性能就是软件对用户操作的响应时间;从管理员角度,软件性能首先表现在系统的响应时间上, 还包括资源利用率、可扩展性、系统容量(并发等)和系统稳定性等,为了保证系统的稳定性和持续良好的运行;
2.软件性能的几个主要术语:
  • 响应时间:系统响应时间为应用系统从发出请求开始到客户端接收到响应所消耗的时间,响应时间由请求发送时间、网络传输时间和服务器处理时间三部分组成。
  • 并发用户数:有两种理解,一种是同一时间段访问系统的用户数量,一种是服务器所能承受的压力(同时发出请求的客户)。在性能测试中我们更关注前者,业务并发用户数。   
    公式c=nL/T,计算平均并发用户数,还可用c=n/10做简单的估计。n为每天访问系统的用户数。还可以通过分析服务器的日志来了解用户的使用状态。
  • 吞吐量:直接体现软件系统的性能承载能力,是指单位时间内系统处理的客户请求数量。

    公式F=NVU*R/TF表示吞吐量;NVu表示VU的个数;R表示每个VU发出的请求(单机)数量;T表示性能测试所用的时间。

  • 性能计数器:是描述服务器或操作系统性能的一些数据指标(例如,内存数、进程时间。用于监控和分析),在性能测试中发挥着监控和分析的关键作用。

  • 资源利用率:指的是对不同系统资源的使用程度,例如服务器的CPU利用率、磁盘利用率等。是分析系统性能指标而改善性能的主要依据,因此,它是Web性能测试工作的重点。
    资源利用率主要针对Web服务器、操作系统、数据库服务器、网络等,是测试和分析瓶颈的主要参数。在性能测试中,要根据需求采集具体的资源利用率参数来进行分析。

  • 思考时间:也被称为休眠时间,指用户在进行操作时,每个请求之间的间隔时间。

  • TPS每秒事务数:每秒钟系统能够处理的交易或事物的数量。它是衡量系统处理能力的重要指标。TPS是LoadRunner中重要的性能参数指标。

3.软件性能测试方法论:

  • SEI负载测试计划过程:关注于负载测试计划的方法,目标是产生清晰、易理解、可验证的负载测试计划。关注目标、用户、用例、生产环境、测试环境和测试场景。
  • RBI方法:用于快速识别系统性能瓶颈的方法。
  • 性能下降曲线分析法:描述性能随用户数量增长而出现下降趋势的曲线。
  • LoadRunner的性能测试过程:包括计划测试、测试设计、创建VU(virtual user)脚本、创建测试场景、运行测试场景、分析结果。
  • Segue提供的性能测试过程:先确定性能基线,然后设定可接受的性能目标,用不同的并发用户数等重复测试。适合性能调优和性能优化,通过不断的try-check过程,逐渐找到可能导致性能瓶颈的地方并对其优化。
  • PTGM模型:分为测试前期准备、测试工具引入、测试计划、测试设计与开发、测试执行和管理以及测试分析。

4.性能测试的方法:

  • 验收性能测试:模拟生产运行的业务压力量和使用场景组合,测试系统的性能是否满足生产性能要求。需要在已确定的环境先运行,事先了解被测试系统的典型场景,并具有确定的性能目标;目的是验证系统是否具有系统宣称具有的能力。
  • 负载测试:在被测系统上不断增加压力,知道性能指标超过预定指标或者某种资源使用已经达到饱和状态;目的是找到系统处理能力的极限,一般用来了解系统的性能容量,或是配合性能调优使用
  • 压力测试:测试系统在一定饱和状态下,例如CPU、内存等在饱和使用情况下,系统能够处理的会话能力,以及系统是否出现错误;目的是检查系统处于压力情况下时应用的性能表现,一般用于测试系统的稳定性。
  • 配置测试:通过对被测系统的软硬件环境的调整,了解各种不同环境对系统性能影响的程度,从而找到系统各项资源的最优分配原则;目的是了解各种不同因素对系统性能影响的程度,从而判断出最值得进行的调优工作,一般用于性能调优和规划能力
  • 并发测试:通过模拟用户的并发访问,测试多用户并发访问同一个应用、同一个模块或者数据记录时是否存在死锁或者其他性能问题。
  • 可靠性测试:通过给系统加载一定的业务压力,让应用持续运行一段时间,测试系统在这种条件下能否稳定运行;目的是验证系统是否支持长期稳定的运行。
  • 失效恢复测试:针对冗余备份和负载均衡的系统设计,用来检查如果系统局部发生故障,用户是否能够继续使用系统,以及如果这种情况发生,用户将受到多大程度的影响。

TAG:

 

评分:0

我来说两句

Open Toolbar