|
性能测试学习分享
日常工作中,主要是对本公司软件产品进行功能测试,软件性能方面的测试接触的很少。但是在软件系统日益复杂的今天,性能已经成为软件质量重要的衡量标准之一。所以有必要加强自己这方面的学习。下面就自己这段时间以来学到的知识与大家分享一下。
什么是性能测试?
主要是通过自动化测试工具来模拟多种正常,峰值以及异常负载条件来对系统的各项性能指标进行测试。性能测试包括压力测试、负载测试、强度测试、并发(用户)测试、大数据量测试、配置测试、可靠性测试等。
为什么要进行性能测试?
进行性能测试是为了更好的保证软件产品的质量,随着软件产品中业务操作的不断增加,对各种服务器,中间设备,硬件等都有很高的要求,如果软件性能不能达到一个标准,那么在使用过程中就会总是挨客户的抱怨,影响公司产品的知名度。
由于大多数的测试工具都是国外产品,帮助文档也都为英文看起来费事,而且现在主流的测试工具为HP公司的MERCURY系列产品,并且国内用的比较广泛,有一些中文资料可以借鉴,所以主要对MERCURY Loadrunner进行研究。(也安装了WebserviceStudio20, soapUI相比之下还是LR最优)。
MERCURY LoadRunner介绍:
通过以模拟上千万用户实施并发负载及实时性能监测的方式来确认和查找问题。
下面简单介绍一下Loadrunner的功能:
1. 录制脚本:选择被测应用系统所支持的协议来进行脚本的录制与回放,在脚本录制过程中,可以添加验证点,数据关联,还可进一步编辑脚本等。
2. 设置场景:选择不同的场景模式和所要监控的计数器对被测系统进行压力测试,并将最终结果生成图表。
3. 分析结果:将生成的图表进行分析,从而找到系统瓶颈与解决方案。
学习心得:通过这段时间的学习,接触了不少的功能/性能方面的测试工具,也学习了不少的测试方法。就本公司的产品而言,大多数是对webservice,数据库性能进行测试,各种性能测试工具比较之下,觉得Loadrunner比较合适,它可以监控各项IIS与数据库性能指标,并且容易撑握,不仅是C/S还是B/S结构都能够进行测试,同时支持.net插件,可将其集成到visual studio中。但是对测试人员的编程能力有所要求,目前自己的编程水平较弱,对于脚本的二次开发存在着一定的困难,如果只是简单的录制脚本回放脚本,可测性还是有限,所以可能要花费时间去学习一下脚本语言。但并不是所有的应用系统都需要做性能测试。针对那些客户端居多,业务操作量多,数据访问量大的系统,找到平时用户应用最多,具有代表性的关键场景进行设计,否则的话可以说是多此一举,不但没有达到性能测试的效果,也会影响测试进度。
以上是我这段时间来学习的大体总结,对于工具的具体使用有机会会在以后的电子期刊中会陆续刊登,如果有谁对性能测试感兴趣的话,我这里有许多资料可以和大家分享,相互探讨学习。希望通过本期刊,能够让大家熟悉性能测试,对大家的工作有所帮助。 |
|