当前位置:首页 >> 解密信息 >> 技术文档

系统性能测试

时间:2010-09-21 15:47:02

  对于一个开发比较成熟的业务系统而言,功能相对已经完善,但在大业务量的情况下往往会泛起各种异常。对此,需通过对系统进行配置修改或者产品框架调整来优化系统。在优化系统过程中,最有效的手段就是对系统做机能测试,通过测试结果的收集分析,不断进行系统优化,终极达到系统在大业务量情况下不乱运行的目的。
  一、测试方法
  测试方法主要通过测试过程中的测试步骤体现出来。测试步骤需根据每次的测试结果不断调整,一个完善的测试方法需要不断地进行机能测试和机能调整。在开始机能调整轮回之前,必需确定以下两点:一是建立业务模型,通过统计或数学模型的方法建立起科学的业务模型,如业务流程分布比例、均匀负荷、峰值负载等;二是设置机能指标,作为判定设计指标和实际机能处理指标的基准值,总体的系统吞吐量、系统的吞吐效率、响应时延等都是用于丈量机能的常费用量尺度。
  确定以上两点后,开始调整轮回,这是一系列重复的受控机能试验。重复图1所示的四个调整轮回阶段,直至获得在开始调整过程前建立的系统机能目标。
  二、测试阶段
  测试阶段是调整轮回操纵的出发点,此阶段是根据测试的要求进行相关操纵,为下一步结果统计提供相应的测试数据。此阶段需要留意测试环境配置、测试用例的操纵两个要点。
  1.测试环境配置
  不同的测试环境会产生不同的测试结果,因此测试前需要对环境配置进行具体的检查。
  (1)检查网络连通性。网络畅通是测试能够正常进行的基本条件。
  (2)检查流量模型是否超出系统负荷。假如将要加的压力大大超出系统的负荷,会对系统产生伤害,并可能在测试过程中泛起宕机、告警等异常情况。
  (3)检查被测系统的系统配置。此系统配置包括软件版本和硬件配置两个方面,不同的系统配置会产生不同的测试结果,故测试之前应对被测系统的配置进行严格核对,检查是否是测试所需的系统配置。
  (4)检查测试工具的参数配置。在机能测试中,必需利用测试工具来模拟大业务量。对于一个功能相对完善的测试工具,不但能模拟大业务量,而且还能够配置压力递增方式、压力大小、压力持续时间等参数。在测试之前需要根据测试的需求检查相应参数配置是否知足测试要求。
  2.测试用例操纵
  测试过程中,机能测试主要按照测试用例划定的内容去逐步操纵。一般来讲机能测试用例内容大体分成测试环境配置、预置前提、测试步骤、预期结果、判断原则、测试结果六个方面。
  环境配置是指按照测试的需求配置测试环境,包括网络的组网、系统的参数配置等;测试预置前提是指为了真实模拟一些场景,需要在测试之前在系统中预置一些前提,例如在邮箱系统的机能测试过程中,为了模拟业务开展的实际情况测试,需要在邮件系统中预先存储一些积存的邮件;测试步骤是指在环境配置完成及预置前提完成后,如何对系统加压的过程,一般而言,首先确定压力的天生形式(如蹊径型递增、二次曲线形式递增等),然后确定压力递增的时间,最后要求压力保持的时间;预期结果是指通过理论及经验分析,对实际测试结果的一个预期指标,此内容是检修测试结果的一个依据;判断原则是制定出一个尺度来判定测试是否知足要求,此原则的制定很大程度上依据测试的预期结果;测试结果是根据实际测试情况及参考预期结果和判断原则对测试的一个总体结论,其结论包括此项测试是否通过及测试的相应指标记实两个方面。
  3.结果统计
  此过程是调整轮回内容中一个承上启下的环节。此环节统计的数据来源于上一次的测试结果,并为下一步的数据分析提供相关数据。
  结果的统计可以来源于被测系统和测试工具本身两个方面,在统计过程中不但要考虑到从被测系统中统计数据还要兼顾到测试工具本身的数据统计。一般来讲,从被测系统可以直接通过系统的日志统计出系统资源消耗(如CPU、内存的占用率等);从测试工具本身可以统计出压力的大小、业务处理时延、业务处理成功率等指标。结果统计阶段需要将以上两个方面的数据一并统计出来,为下一步数据分析提供重要依据。
  4.结果分析
  通过数据统计收集到系统所需的机能数据后,对这些数据进行分析以确定系统瓶颈。在这里,需要明确的是统计到的体现机能数据仅具有指示性,它并不一定就可以确定实际的瓶颈在哪里,由于一个机能题目可能由多个原因所致。因此,在结果分析阶段需要从系统的角度去分析并查找原因,千万不能走入"头痛医头,脚痛医脚"的误区。在结果分析阶段应该留意到以下几个方面。
  (1)数据发现的敏感性,能够主动发现一些貌似"公道"的数据题目。
  (2)数据分析的系统性,能够通过测试数据的表象,从系统的角度对数据进行分析,发现系统瓶颈。
  (3)数据公道的疑问性,测试工作的目的就是要发现题目,优化系统,所以应该抱着对所有数据怀疑的立场去分析测试数据,这样才能做到不漏掉任何的"可疑"数据。
  (4)结果分析的分步性,通过测试经验,对于测试结果分析可以分成六步进行,包括观察、初步假设、猜测、测试、控制和结论,结论由该过程积累的最佳证据集合所支持的假设组成。
  三、总结
  在轮回调整的过程中,测试、结果统计、结果分析环节的终极目的是要对系统进行优化。因此,系统优化的依据直接来源于对测试结果的分析。通常来讲,对于一个比较成熟的系统,系统的绝大多数优化工作往往是对系统配置的优化,只有少部门的优化工作是对系统设计的修改。
  通过对结果的分析,可以大体定位出系统题目泛起在哪里,随后对系统配置进行更改及优化。此优化过程大部门的工作是尝试性和不中断性的,需要不断尝试配置参数的改变,然后验证此配置的修改是否达到预期目的。假如没有达到预期目的,需要进一步对配置进行修改和验证。根据以往的测试经验,实现参数配置更改的最重要规则是一次仅实现一个配置更改。这主要是因为系统某一个模块/单元泛起题目可能是由多个模块/单元的瓶颈导致的。因此,分别处理每个题目很重要。假犹如时进行多个更改,将不可能正确地评定每次更改的影响。
  实现了配置更改后,必需对修改后的系统进行测试,确定更改对系统所产生的影响。假如幸运,机能进步到预期的水平,这时便可以退出。假如不是这样,则必需重新逐步进行调整轮回。
  综合考虑以上的内容,一个调整轮回的流程才算基本完成,根据调整的结果来考虑是否进入下一部调整轮回的阶段。

解密技术
解密问题
芯片解密