当前位置:首页 > 心得体会 > 如何进行有效的性能测试? 关于有效协调的故事
 

如何进行有效的性能测试? 关于有效协调的故事

发布时间:2019-03-19 04:27:19 影响了:

  随着信息系统应用越来越广泛,系统稳定在怎样的性能水平为好?面临公司业务冲刺时,系统能否经受住“考验”?……这些问题逐步成为人们关注的焦点。   许多未经性能测试的系统,往往无法预知系统的承载压力。在出现多用户并发情况时,这样的系统极可能造成响应缓慢甚至崩溃的问题。
  为避免发生这些问题,系统上线前需要进行一个有效的性能测试,找出系统的性能瓶颈,检查系统是否能够满足实际性能需求,进而降低系统上线后的性能风险。
  面对越来越复杂的信息系统,测试人员怎样才能进行有效的性能测试?应该如何选择测试策略、如何设计测试案例呢?本文以中国软件评测中心对某企业信息管理系统的性能测试为例,介绍性能测试的实施过程。
  该信息系统用于建筑施工项目信息管理,采用B/S三层结构运行模式。在北京从事建筑施工项目的外地进京企业将通过这套系统进行项目信息(基本信息、人员信息)的备案、申请、查询及相关管理部门通过系统进行备案的审核、统计。
  
  本次性能测试的目的是评估系统在模拟环境中、在不同的用户连接情况下、系统的吞吐能力和响应能力以及在预计的数据容量中,系统能够容忍的最大用户数。
  
  结合系统实际业务情况,测试人员发现登录和项目备案查询功能容易出现多用户并发访问,所以选取了这两个功能作为性能测试点,选择了并发测试作为测试策略,同时使用了性能测试工具LOadrUnner V8.0。
  通常,并发测试过程,是一个负载测试和压力测试的过程,即逐渐增加负载,直到系统的瓶颈或者不能接收的性能点,通过综合分析交易执行指标和资源监控指标来确定系统并发性能的过程。
  并发性能测试的测试内容如下:
  一、负载压力测试。模拟不同数量用户并发执行关键业务,测试系统能够承受的最大并发用户数。
  二、系统资源监控。进行负载压力测试的同时,使用测试工具监控数据库服务器、应用服务器以及中间件服务的资源占用情况。观察不同压力下,各服务器资源占用变化曲线,找出系统的性能瓶颈。
  性能测试中除需要选择正确的性能测试点和测试策略外,测试环境也是关系性能测试能否成功的关键因素。
  通常,性能测试需要在测试环境中进行,所以要求测试环境尽量同生产环境保持一致,本次测试中,测试人员依据真实生产环境搭建测试环境,如图1。
  
  在建立好测试环境后,接下来就要准备测试案例。测试案例的选取有三点:第一、根据系统实际的用户数量制定并发用户;第二、根据系统的关键业务流程点;第三、根据系统在某个时段可能产生最大的并发量。
  根据以上几点方法,测试人员与开发人员进行充分沟通后,分析可能出现的压力、设计出单项并发测试案例和疲劳测试案例。测试案例列表如表1。
  
  接着,根据设计好的测试案例,测试人员利用测试工具Loadrunner录制测试脚本,并按照前面设计的测试策略,进行j生能测试并记录测试结果。本次性能测试并发测试的测试结果如表2。
  在系统登录测试案例中,平均交易响应时间随着用户数增加而相应增加,150个用户并发时登录系统交易的平均响应时间为9.952秒,应用服务器的CPU平均占用率未超过40%,数据库服务器CPU平均占用率未超过10%,系统可以支撑150个用户并发登陆。
  按照设计的疲劳测试案例,测试人员分别并发20个用户、40个用户和60个用户,对系统进行30分钟疲劳测试,所有测试案例案例全部成功。疲劳测试结果如表3。
  
  从并发测试结果和疲劳测试结果中,测试人员发现Web服务器的CPU平均占用率未超过30%,资源占用率较低,内存和磁盘的使用情况良好;数据库服务器CPU平均占用率未超过30%,资源占用率低,内存和磁盘的使用情况良好。
  虽然系统所有操作成功,但登陆用户的平均交易响应时间较高,都在100秒以上,而系统的资源使用并不高,此后通过对测试结果获取的代码数据进行分析,定为到可能导致系统运行不合理的代码,中国软件评测中心提出优化方案,开发商根据方案对其进行适当优化调整后,再进行回归测试。结果如表4。
  系统优化后,系统在资源占用和平均交易响应时间上均达到了需求。通过性能测试,中国软件评测中心协助客户找出系统性能瓶颈,并改正系统性能问题,使得系统更好的满足业务的实际业务需求。

猜你想看
相关文章

Copyright © 2008 - 2022 版权所有 职场范文网

工业和信息化部 备案号:沪ICP备18009755号-3