东儿童
爱拼才会赢
当一套程序写完或者一台服务器配置完成后,相必很多朋友会像我一样,非常想知道它到底能够承受多大的负载压力,那在本文中,就给大家介绍十个免费的可以用来进行Web的负载/压力测试的工具,这样,你就可以知道你的服务器以及你的Web应用能够顶得住多少的并发    

  当一套程序写完或者一台服务器配置完成后,相必很多朋友会像我一样,非常想知道它到底能够承受多大的负载压力,那在本文中,就给大家介绍十个免费的可以用来进行Web的负载/压力测试的工具,这样,你就可以知道你的服务器以及你的Web应用能够顶得住多少的并发量,以及你的网站的性能。

  Grinder

  Grinder是一个开源的JVM负载测试框架,它通过很多负载注射器来为分布式测试提供了便利。支持用于执行测试脚本的Jython脚本引擎HTTP测试可通过HTTP代理进行管理。根据项目网站的说法,Grinder的主要目标用户是“理解他们所测代码的人——Grinder不仅仅是带有一组相关响应时间的‘黑盒’测试。由于测试过程可以进行编码——而不是简单地脚本化,所以程序员能测试应用中内部的各个层次,而不仅仅是通过用户界面测试响应时间。

  Pylot

  Pylot是一款开源的测试Webservice性能和扩展性的工具,它运行HTTP负载测试,这对容量计划,确定基准点,分析以及系统调优都很有用处。Pylot产生并发负载(HTTPRequests),检验服务器响应,以及产生带有metrics的报表。通过GUI或者shell/console来执行和监视testsuites。

  Web Capacity Analysis Tool(WCAT)

  这是一种轻量级负载生成实用工具,不仅能够重现对Web服务器(或负载平衡服务器场)的脚本HTTP请求,同时还可以收集性能统计数据供日后分析之用。WCAT是多线程应用程序,并且支持从单个源控制多个负载测试客户端,因此您可以模拟数千个并发用户。该实用工具利用您的旧机器作为测试客户端,其中每个测试客户端又可以产生多个虚拟客户端(最大数量取决于客户端机器的网络适配器和其他硬件)。

  您可以选择使用HTTP 1.0还是HTTP 1.1请求,以及是否使用SSL。并且,如果测试方案需要,您还可以使用脚本执行的基本或NTLM身份验证来访问站点的受限部分。(如果您的站点使用cookie、表单或基于会话的身份验证,那您可以创建正确的GET或POST请求来对测试用户进行身份验证。)WCAT还可管理您站点可能设置的任何cookie,所以配置文件和会话信息将永久保存。

fwptt

  fwptt也是一个用来进行Web应用负载测试的工具。它可以记录一般的请求,也可以记录Ajax请求。它可以用来测试ASP.NET,JSP,PHP或是其它的Web应用。

  JCrawler

  JCrawler是一个开源(CPL)的Web应用压力测试工具。通过其名字,你就可以知道这是一个用Java写的像网页爬虫一样的工具。只要你给其几个URL,它就可以开始爬过去了,它用一种特殊的方式来产生你Web应用的负载。这个工具可以用来测试搜索引擎对你站点产生的负载。当然,其还有另一功能,你可以建立你的网站地图和再点击一下,将自动提交Sitemap给前5名的搜索引擎!

  Apache JMeter

  Apache JMeter是一个专门为运行和服务器装载测试而设计的、100%的纯Java桌面运行程序。原先它是为Web/HTTP测试而设计的,但是它已经扩展以支持各种各样的测试模块。它和用于HTTP和SQL数据库(使用JDBC)的模块一起运送。它可以用来测试静止资料库或者活动资料库中的服务器的运行情况,可以用来模拟对服务器或者网络系统加以重负荷以测试它的抵抗力,或者用来分析不同负荷类型下的所有运行情况。它也提供了一个替换的界面用来定制数据显示,测试同步及测试的创建和执行。


Siege

  Siege(英文意思是围攻)是一个压力测试和评测工具,设计用于Web开发这评估应用在压力下的承受能力:可以根据配置对一个Web站点进行多用户的并发访问,记录每个用户所有请求过程的相应时间,并在一定数量的并发访问下重复进行。Siege支持基本的认证,cookies,HTTP和HTTPS协议。

  http_load

  http_load以并行复用的方式运行,用以测试Web服务器的吞吐量与负载。但是它不同于大多数压力测试工具,它可以以一个单一的进程运行,一般不会把客户机搞死。可以可以测试HTTPS类的网站请求。

  Web Polygraph

  Web Polygraph这个软件也是一个用于测试Web性能的工具,这个工具是很多公司的标准测试工具,包括微软在分析其软件性能的时候,也是使用这个工具做为基准工具的。很多招聘测试员的广告中都注明需要熟练掌握这个测试工具。

  OpenSTA

  OpenSTA是一个免费的、开放源代码的Web性能测试工具,能录制功能非常强大的脚本过程,执行性能测试。例如虚拟多个不同的用户同时登陆被测试网站。其还能对录制的测试脚本进行,按指定的语法进行编辑。在录制完测试脚本后,可以对测试脚本进行编辑,以便进行特定的性能指标分析。其较为丰富的图形化测试结果大大提高了测试报告的可阅读性。OpenSTA基于CORBA的结构体系,它通过虚拟一个proxy,使用其专用的脚本控制语言,记录通过proxy的一切HTTP/Straffic。通过分析OpenSTA的性能指标收集器收集的各项性能指标,以及HTTP数据,对系统的性能进行分析。

 

 1. LoadRunner:支持多种常用协议多且个别协议支持的版本比较高;可以设置灵活的负载压力测试方案, 

可视化的图形界面可以监控丰富的资源;报告可以导出到Word、Excel以及HTML格式。 

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

3. E-Test Suite:由Empirix公司开发的测试软件,能够和被测试应用软件无缝结合的Web应用测试工具。 
工具包含e-Tester、e-Load和e- Monitor,这三种工具分别对应功能测试、压力测试以及应用监控,每一部分功能相互独立, 
测试过程又可彼此协同。 

4. QALoad: 
  (1).测试接口多; 
  (2)可预测系统性能; 
  (3)通过重复测试寻找瓶颈问题; 
  (4)从控制中心管理全局负载测试; 
  (5)可验证应用的扩展性; 
  (6)快速创建仿真的负载测试; 
  (7)性能价格比较高。 
  此外,QALoad不单单测试Web应用,还可以测试一些后台的东西,比如SQL Server等。只要它支持的协议,都可以测试。 

5. Benchmark Factory: 首先它可以测试服务器群集的性能;其次,可以实施基准测试;最后,可以生成高级脚本。 

6. JMeter:是开源测试工具,专门为运行和服务器负载测试而设计、100%的纯Java桌面运行程序。 
原先它是为Web/HTTP测试而设计的,但是它已经扩展以支持各种各样的测试模块。 
它和HTTP和SQL(使用JDBC)的模块一起运行。它可以用来测试静止或活动资料库中的服务器运行情况, 
可以用来模拟服务器或网络系统在重负载下的运行情况。它也提供了一个可替换的界面用来定制数据显示, 
测试同步及测试的创建和执行。 

7. WAS:是Micro$oft提供的免费的Web负载压力测试工具,应用广泛。 
WAS可以通过一台或者多台客户机模拟大量用户的活动。WAS支持身份验证、加密和Cookies, 
也能够模拟各种浏览器和Modem速度,它的功能和性能可以与数万美元的产品媲美。 

8. ACT:或称MSACT,它是微软的Visual Studio和Visual Studio.net带的一套进行程序压力测试的工具。 
ACT不但可以记录程序运行的详细数据参数,用图表显示程序运行情况,而且安装和使用都比较简单,结果阅读方便, 
是一套较理想的测试工具。 

9. OpenSTA:它的全称是Open System Testing Architecture。 
OpenST的特点是可以模拟很多用户来访问需要测试的网站,它是一个功能强大、自定义设置功能完备的软件。 
但是,这些设置大部分需要通过Script来完成,因此在真正使用这个软件之前,必须学习好它的Script编写。 
如果需要完成很复杂的功能,Script的要求还比较高。当然这也是它的优点,一些程序员不会在意编写Script的。 

10. PureLoad:一个完全基于Java的测试工具,它的Script代码完全使用XML。所以,编写 Script很简单。 
它的测试包含文字和图形并可以输出为HTML文件。由于是基于Java的软件, 
因此PureLoad可以通过Java Beans API来增强软件功能。

 

 

 

 

 

posted on 2012-10-19 15:54  哎!无悔  阅读(7705)  评论(0编辑  收藏  举报