性能测试知多少---测试工具介绍

 继续这个系列的学习,这一节重点介绍目前流行的性能测试工具以及如何选择适合项目的工具。在此之前,我已经对性能测试工具的原理与架构做了分析。

http://www.cnblogs.com/fnng/archive/2012/07/31/2617546.html 

 

 

性能测试工具的选择与评估                                              

 

  在性能工具原理与架构一章中,我们了解到性能测试工具的原理通常是:通过录制、回放脚本,模拟多用户同时访问被测试系统,模拟产生负载压力,监控并记录各种性能指标,生成性能分析结果和报告,从而完性能测试的基本任务。

  对需要进行性能测试的组织来说,决定使用哪种性能测试工具也不是一个简单的问题。我们有需要对性能需求进行分析,购买成本,人员学习使用成本进行综合考虑,从而确定最适合的本次性能测试的工具。


这里所提到的性能测试工具为狭义上的性能测试工具,特指包含脚本生成、负载生成与测试数据搜集的性能测试工具,从广义上来讲,在性能测试过程中所用到一切
工具,都可以称为性能测试工具,其中包括,软件协议分析工具,测试数据生成工具,测试监控工具等都属于性能测试工具范畴。

  我简单的软件性能测试工具分为三类,商业收费工具、开源免费工具、自主开发工具。下面是这三类工具的比较:

通过上面的比较分析,很难判别对某类工具的取舍,各自有其明显的优势,当然也有明显的缺点,如何更好选择工具,这里就要结合实际性能的需求了。

需要考虑以下几个方面:

性能需求

  首先要考虑的是否满足性能需求,例如系统的协议不支持,无法创建脚本,系统的模拟用户数达不到,或都某此特殊功能无法测试,如流媒体性能测试等。一些有性能工具是无法满足这些需求的,那当然要首先排除。

购买成本

  对于商业工具的购买成本也是我们需要考虑的问题,其实,这个问题也是老板需要考虑的问题,对性能测试成本的整体预算等。
当然了,在满足性能需求的前提下,当然一切从简。如果只需要某商业软件的部分功能,也可以只购买部分功能。有的是根据支持协议的多少、并发用户上限来区
分,如loadrunner 。

  这里要多扯一点,loadrunner应该是性能测试领域的巨无霸,它的年服务费多百万,这不是一般的小公司能承受的,可能许多网友用破解习惯了不以为然。而且loadrunner是可以定制的,一般商业软件都是可以定制的,也就是说,你有特定的需求,只要你愿意花钱,提供商都可以帮你定制开发。这样算下来成本会很高。

  那么开源软件呢? 开源的性能测试工具其实非常的多,因为它们都分别适合在不同的需求场景下,所以,它们的体积相比商业
软件会小很大,当然功能也相对简陋。但是他们在某些情况下可以完全满足某些性能需求,或者可以通过几款开源工具配合满足,或者通过对开源工具进行扩展进行
满足。对开源工具进行扩展,对测试人员的要求较高。需要测试人员对工具的原理及源代码有相当有研究。这里对测试人员自动能力的提升非常有帮助。

  或者你的性能测试项目特殊,找遍市面上的所有性能工具无一款满意,商业定制成本过高。或者你想构建自己有工具体系。处于
公司需求的特殊性与长期性考虑,可以自主开发一个性能测试工具来用。一次开发,永久收益(当然也需要维护与升级、扩展等),而且更贴近自已的需求。目前很
多知明的大公司都有自己的性能测试工具,用于内部使用。 

人员学习成本

  最后要提到的就是人员对工具的学习成本,其实,测试人员在选择性能测试工具时最先考虑的就是从自己会使用的工具入手,这
样可以最低的控制学习成生,如果整一个工具,测试人员单学测试脚本就学了半年,老板早让你走人了。这也是对性能测试人员要求较高的地方。所以,对于性能测
试人员,你最好熟悉一款流程的商业性能工具,一款开源免费性能具,还需要熟悉常见的性能脚本开发语言等,这是基本要求。

 

性能测试工具介绍                                                                      

 

商业工具 :

  QA Load:Compuware公司的QALoad是客户/服务器系统、企业资
源配置(ERP)和电子商务应用的自动化负载测试工具。QALoad是QACenter性能版的一部分,它通过可重复的、真实的测试能够彻底地度量应用的
可扩展性和性能。QACenter汇集完整的跨企业的自动测试产品,专为提高软件质量而设计。QACenter可以在整个开发生命周期、跨越多种平台、自
动执行测试任务。

 

 

    SilkPerformer:一种在工业领域最高级的企业级负载测试工具。它可
以模仿成千上万的用户在多协议和多计算的环境下工作。不管企业电子商务应用的规模大小及其复杂性,通过SilkPerformer,均可以在部署前预测它
的性能。可视的用户化界面、实时的性能监控和强大的管理报告可以帮助我们迅速的解决问题,例如加快产品投入市场的时间,通过最小的测试周期保证系统的可靠
性,优化性能和确保应用的可扩充性。

 

 

     LoadRunner:一种较高规模适应性的,自动负载测试工具,它能预测系
统行为,优化性能。LoadRunner强调的是整个企业的系统,它通过模拟实际用户的操作行为和实行实时性能监测,来帮助您更快的确认和查找问题。此
外,LoadRunner 能支持最宽范的协议和技术,为您的特殊环境,量身定做地提供解决方案。

 

 

  WebRunner:是RadView公司推出的一个性能测试和分析工具,它让
web应用程序开发者自动执行压力测试;webload通过模拟真实用户的操作,生成压力负载来测试web的性能,用户创建的是基于javascript
的测试脚本,称为议程agenda,用它来模拟客户的行为,通过执行该脚本来衡量web应用程序在真实环境下的性能。

 

 

  IBM Rational Performance Tester(简称 RPT)
也是一款性能测试工具,适用于基于 Web 的应用程序的性能和可靠性测试。Rational Performance Tester 将易用性与深入分
析功能相结合,从而简化了测试创建、负载生成和数据收集,以帮助确保应用程序具有支持数以千计并发用户并稳定运行的性能。 

 

 开源或免费工具:

  Apache JMeter是Apache组织开发的基于Java的压力测试工具。
用于对软件做压力测试,它最初被设计用于Web应用测试但后来扩展到其他测试领域。 它可以用于测试静态和动态资源例如静态文件、Java 小服务程序、
CGI 脚本、Java 对象、数据库, FTP 服务器, 等等。JMeter 可以用于对服务器、网络或对象模拟巨大的负载,来在不同压力类别下测试
它们的强度和分析整体性能。 

 

 

  AutoBench 是一款基于httperf的Perl脚本。它会在一次测试中调
用多次httperf来对web服务器进行测试,每次会按照给定的参数增加并发连接数,将 httperf的测试结果保存为CSV格式的文件,该文件可以
被Excel直接读取,方便生成测试报告。借助于autobench自带的 bench2graph工具可以生成漂亮的测试结果对比图。 

 

 

  ApacheBench 工具程式(ab)是 Apache 网站伺服器软体的一个
附带的工具软体,专门用来执行网站伺服器的运行效能,特别是针对 Apache 网站伺服器 的效能分析。这支程式原本是用来检测 Apache 网站伺
服器(Web Server) 所能够提供的效能,特别是可以看出 Apache 网站伺服器能提供每秒能送出多少网页,当然的,也可以用在任何其他的网
站伺服器 Apache ab的全称是ApacheBench,是 Apache 附带的一个小工具,专门用于 HTTP Server 的
benchmark testing,可以同时模拟多个并发请求。 

 

 

  curl-loader(也被称为“omes-NIK”和“davilka”)是一
个开源的C语言编写的工具,模拟应用负载和成千上万的几十万人的HTTP / HTTPS和FTP/ FTPS的客户端应用程序的行为,每个有其自己的源
IP地址。相反,其他curl-loader使用真正的C编写的客户端协议栈,即libcurl和TLS/ openssl的SSL的HTTP和FTP协
议栈,支持登录和验证口味和模拟用户行为的工具。 

 

 

  Iago 是一个网站负载测试工具,Iago 针对一个给定的网站进行访问录制并合成流量数据。它不同于其他的负载生成工具,它试图保持恒定的请求率。例如如果你想按每分钟100K来请求您的服务,Iago 会试图保持这个速度进行测试。 

 

 

  Pylot 是一款开源的用以测试 Web Service性能和扩展性的工具,它
运行HTTP负载测试,这对于制定容量计划、确定基准点、分析系统瓶颈以及系统调优都非常有用。在使用过程 中,Pylot会发起并发请求
(HTTP Requests),检验服务器响应,以及带有相关指标的报表。它通过GUI或者Shell/Console来执行和监视对被测试网站的测试
过程。

-----------------------------------------------

 关于性能测试工具非常的多,如果你是个开源的粉丝可以去开源中国转转,那里有许多非常优秀的开源软件。

时间: 2024-09-17 04:27:08

性能测试知多少---测试工具介绍的相关文章

[文档]百度云开发测试工具介绍

百度云开发测试工具介绍 董海峰   百度移动云计算测试部TC主席 temp_12051608208121.pdf

性能测试知多少---测试环境搭建

在进行性能则试前,需要完成性能测试的搭建工作,一般包括硬件环境.软件环境及网络环境,可以要求配置和开发工程师协助完成,但是作为一个优秀性能测试工程师,这也是你的必备技能之一.   性能测试环境与功能测试环境的区别                                                  那么性能测试环境与功能测试环境有什么不同呢?性能测试对测试环境的干净.独立性要求更高,更为严格.对于一个相对较规范的公司,都会建立其独立的研发环境.测试环境.线网环境(最终运行软件的环境)

性能测试知多少---性能测试工具原理与架构

在性能测试的学习过程中,坚持思想与工具(分开)并行,当前面世面上的性能测试书籍大多把理论与loadrunner融为一体讲解,这样做是正确的,因为有一些性能名词概念也源于工具.但是,性能测试不是loadrunner,所有的作者也是这么认为的.但他们在讲性能测试的时候讲的就是loadrunner有,只是讲的多少不同罢啦. 你是否觉得我对loadrunner有仇?我之所以将其分开来学,只是希望自己在学习性能测试的时候不要被loadrunner局限了而已.只是觉得在做性能测试时不要带loadrunner

服务器性能测试 测试工具 如何测试?

问题描述 服务器性能测试 测试工具 如何测试? 服务器性能测试有哪些方法? 测试工具有哪些? 如何测试? 服务器压力测试怎么做? 解决方案 1.衡量服务器性能,通常有以下指标:吞吐量,连接建立速率,并发连接数: 2.测试服务器性能通常采用专门的测试工具来测试,硬件工具有smartbit,ixia等,价格通常不菲,软件测试工具由http_load, web_load, opensta等. 3.要测试服务器性能的话,首先需要搭建一个测试环境,如果使用硬件测试器的话(性能好,功能强),一般都有很好的手

webservice---restful webservice的介绍与测试工具

就连我院的线上教学支持系统都打算分离出核心数据(即学生和课程的信息),通过REST风格的Web服务来提供这些中心数据,支持其他功能(例如课程论坛.作业发布和提交等)的实现.这样做的好处自然是分离的数据可以再提供给今后更多的服务使用,比起传统的全部使用本地数据库的方法减少了冗余和错误的产生.而其缺点在于加大了开发难度,以前可以很轻松的诸如数据表中外键的功能全部得从第三方资源实现,一定程度上降低了网站的运行效率.同时,进行REST的开发和测试也变得不那么直接了.虽然各种语言都有HTTP请求相关的类库

WQL语言简介和WQL测试工具wbemtest.exe使用方法详细介绍_win服务器

WQL就是WMI中的查询语言,WQL的全称是WMI Query Language,简称为WQL,翻译成中文好像可以成为Windows管理规范查询语言.熟悉SQL语言的朋友会感觉它和SQL非常相似. WQL其实非常简单,它有如下特点: 1.每个WQL语句必须以SELECT开始: 2.SELECT后跟你需要查询的属性名(我刚才对应SQL将其称之为字段名了),也可以像SQL一样,以*表示返回所有属性值: 3.FROM关键字: 4.你要查询的类的名字: 5.另外,如果你想精确查询结果还可以加上WHERE

性能测试知多少---性能分析与调优的原理

最近一直纠结性能分析与调优如何下手,先从硬件开始,还是先从代码或数据库.从操作系统(CPU调度,内存管理,进程调度,磁盘I/O).网络.协议(HTTP, TCP/IP ),还是从应用程序代码,数据库调优,中间件配置等方面入手. 单一个中间件又分web中间件(apache .IIS),应用中间件(tomcat .weblogic .webSphere )等,虽然都是中间件,每一样拎出来往深了学都不是一朝一夕之功.但调优对于每一项的要求又不仅仅是"知道"或"会使用"这么

性能测试知多少---系统架构分析

有些事儿一旦放一放就难再拾起来,突然发现<性能测试知多少>这个系列两月没更新,关键时我都不知道啥时候放下的,总容易被各种技术所吸引走,如饥似渴的想学更多的东西,这几天一直有朋友问我为啥不写了,我才意识,事情要一样一样做,我现在要把这个系列完成.   之前有对性能需求进行过分析,那篇主要从项目业务.背景等角度如何抽丝剥茧的将项目的需求抽离出来.在我们进行需求的时候也需要对被测项目的架构有一定的认识,如果不了解被测系统的架构,那么在后期的性能分析与调优阶段将无从下手.   简单系统架构介绍    

IETester中文免费版 – 最佳网页IE浏览器兼容性测试工具

IETester中文免费版 – 最佳网页IE浏览器兼容性测试工具(IE6 IE7 IE8共存) 对于很多拥有自己博客或者接触网页制作的朋友,肯定会遇到自己辛苦写好的页面在不同的浏览器下显示出来的效果截然不同吧,喜欢追求完美的朋友就肯定希望能尽量在不同浏览器下对页面进行测试并保证其正常显示了.当然,像FireFox.Safari.Opera等浏览器还可以随意地安装卸载,然而,最麻烦的莫过于微软的"IE"系列了. 基本上你不能用常规的方法同时在一个系统中安装IE5.IE6.IE7甚至IE8