十五年测试老手,长期负责WEB\APP 项目测试,目前主要负责团队管理工作。

推荐14款开源的Web应用测试工具

上一篇 / 下一篇  2011-05-28 13:58:04 / 个人分类:其它

1.JMeter是Apache组织的开放源代码项目,它是功能和性能测试的工具,100%的用java实现。

A8j |:Jpjf}(s0

F]I+b-Yaf V0

2.Grinder

lx!W5T"PR-?w!l0

Grinder是一个负载测试框架,通过Jython来编写测试脚本,基于HTTP的测试可以由浏览器来记录整个要测试的过程。51Testing软件测试网zv)`n+l u.v l7c

关键特性:

6c;Y}d!H(`d0

泛型测试方法

F+i7[c d)W0

灵活的测试脚本编写51Testing软件测试网Drs.ez!|%Lr ] ?

分布式框架51Testing软件测试网&K,`1c2PH2d

成熟的HTTP支持

tj'ioV] uB0

3.Multi-Mechanize51Testing软件测试网@ z|4q(O:@*W

Multi-Mechanize是一个开源的Web性能和负载测试框架,可让你并发运行多个Python脚本来对网站或者Web服务进行压力测试。

d.]AZ3v,N0

主要特性:51Testing软件测试网Y ot ` T

支持各种HTTP methods

:u!|)^N$A9M0

高级超链接和HTML表单支持51Testing软件测试网5|u$V/}U7Fc r(iyJ

支持SSL

!fgjRi2w,yvT0

自动处理Cookies51Testing软件测试网_9a8[&BF0C4L1\

可设置HTTP头

/rQ/E*v0u:R6L0

自动处理重定向

UC&d5H2K x&g0

支持代理51Testing软件测试网&Qi2K$P Xc

支持HTTP认证

Xym?8R~0

下面是一些测试结果图表:51Testing软件测试网 PO(B/R'sdQ `

51Testing软件测试网KX~op

4.Selenium51Testing软件测试网;`4Y*FLnx,M]t

Selenium(SeleniumHQ)是thoughtworks公司的一个集成测试的强大工具。

!B?3?k H|LO0e0

Selenium的版本

alf'~Xn m([(U0

Selenium现在存在2个版本,一个叫selenium-core,一个叫selenium-rc。

7b4p7N6_"] T(B5}0

selenium-core是使用HTML的方式来编写测试脚本,你也可以使用Selenium-IDE来录制脚本,但是目前Selenium-IDE只有FireFox版本。51Testing软件测试网#F"`5K)O5|tu;cW

Selenium-RC是selenium-remote control缩写,是使用具体的语言来编写测试类。51Testing软件测试网^6L \jx y\d?V

selenium-rc支持的语言非常多,这里我们着重关注java的方式。这里讲的也主要是selenium-rc,因为个人还是喜欢这种方式.

i5O+w0^qOsn p9I0

下图是Selenium IDE的运行界面截图:51Testing软件测试网VIaWT

51Testing软件测试网dr}0k9T8UfLY

5.Mechanize51Testing软件测试网7Mq#RF:WD%w(^ ]W

当您希望与Web页面中找到的内容进行某种比较复杂的交互时,您需要使用mechanize库

9S,O8`;[td!["T[0

6.Zope-Testbrowser可编程浏览器用于黑盒功能测试51Testing软件测试网2ch obZ[Dj#f{

Zope.testbrowser提供了一个简单易用的可编程Web浏览器,主要用于测试,可在Zope中使用。

'MV/{$aZ0

7.Capybara51Testing软件测试网3W-H(b-D x @k(uy

Capybara旨在简化测试Rack应用(Rails、Sinatra、Merb等应用)的集成过程。Capybara可模拟一个真实的用户跟Web应用进行交互。51Testing软件测试网rH:Uu#M

8.OpenSTA

wT!eDd8h&R[1r(~_0

OpenSTA是一个免费的、开放源代码的web性能测试工具,能录制功能非常强大的脚本过程,执行性能测试。例如虚拟多个不同的用户同时登陆被测试网站。

Pc4ai;F}o0

OpenSTA是专用于B/S结构的、免费的性能测试工具。它的优点除了免费、源代码开放的优点外,还能对录制的测试脚本进行,按指定的语法进行编辑。在录制完测试脚本后,可以对测试脚本进行编辑,以便进行特定的性能指标分析。其较为丰富的图形化测试结果大大提高了测试报告的可阅读性。51Testing软件测试网I c7q$G,_h^7{_s

OpenSTA基于CORBA的结构体系,它通过虚拟一个proxy,使用其专用的脚本控制语言,记录通过proxy的一切HTTP/S traffic。通过分析OpenSTA的性能指标收集器收集的各项性能指标,以及HTTP数据,对系统的性能进行分析。51Testing软件测试网(A w,x hgN?3xJ;In0}&h

优点:压力测试引擎具有可扩充性,可以完成打规模的压力测试。提供脚本语言支持。

y5k.J6Dj4a+A_0

9.Pylot

tQ s7Y1A0

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

Pylot基于Python开发,和著名的Apache压力测试工具ab一样,默认在命令行运行,也可以通过参数触发GUI界面,当然前提是安装了wxPython的。51Testing软件测试网 \-s?:E H5bIv

10.Splinter51Testing软件测试网g#x4U*[VWj*Gb

Splinter是一个用Python编写的Web应用程序进行验收测试的工具。51Testing软件测试网#kg$j j6HCh7TJI+q

示例代码:51Testing软件测试网X/P!DYWpj]*q

  1. browser = Browser('webdriver.chrome')  
  2. browser = Browser('webdriver.firefox')  
  3. browser = Browser('zope.testbrowser')  
  4. browser.visit('http://cobrateam.info')  
  5. browser.reload()  
  6. browser.find_by_css('h1')  
  7. browser.find_by_xpath('//h1')  
  8. browser.find_by_tag('h1')  
  9. browser.find_by_name('name')  
  10. browser.find_by_id('firstheader') 

11.Windmill51Testing软件测试网#y(tTnO,R)L"i

Windmill是一个Web测试工具,让你进行自动化的测试和调试web应用。

6MA4X"OF9m0

12.Alfajor

!H#[rOH O Bx'x]0

Alfajor提供了先进的、面向对象的跟浏览器无关的HTTP资源测试框架,Python脚本和测试代码可实时的同步同步浏览的X/HTML DOM,当页面上因为JavaScript更改DOM时也会及时反映到该框架。同时提供了客户端API支持对JSON和Web API的测试。

4{2R7c$m*M(L(ZH:t4Q&r0

13.Webrat

rQ uTr m(F8[0

Webrat可帮我们编写可表达以及稳健的验收测试脚本,主要用于Ruby应用,支持多种Ruby的Web框架,例如Rails,Merb 和 Sinatra。Webrat同时还支持一些常用的测试框架,例如:RSpec, Cucumber, Test::Unit and Shoulda.

$_^4tzUAzB0

14.webload

0c O.i!O OJ%p3L0

webload是RadView公司推出的一个性能测试和分析工具,它让web应用程序开发者自动执行压力测试;webload通过模拟真实用户的操作,生成压力负载来测试web的性能。

V;|6D ax4ZcH0

TAG: web Web 测试工具

 

评分:0

我来说两句

Open Toolbar