`
jsntghf
  • 浏览: 2533546 次
  • 性别: Icon_minigender_1
  • 来自: 苏州
社区版块
存档分类
最新评论

Watir - Ruby的开源Web自动化测试框架

阅读更多

Watir 是一个使用 Ruby 实现的开源Web 自动化测试框架,相对于那些庞大的商业工具来说,它很小巧,也很灵活,提供的功能也足够用。


因为 Watir 的网站上用户手册、示例代码以及 FAQ 都维护的不错,所以已有的东西我就不重复了,在这里简单介绍一下,如果同行们有兴趣,可以一起研究一下。


1、脚本示例


先丢一段脚本给大家看看使用 Watir 来书写脚本是多么的方便。下面的例子是 Watir 自带的一段测试 Google 的搜索功能的脚本,不过我只保留了最主要的部分,以使它看起来更简洁一些:

 

require 'watir'   # the watir controller  
ie = Watir::IE.new  
ie.goto (http://www.google.com)  
ie.text_field(:name, "q").set("pickaxe")      
ie.button(:name, "btnG").click          
if  ie.contains_text("Programming Ruby")   
   puts "Test Passed. Found the test string: 'Programming Ruby'."  
else  
   puts "Test Failed! Could not find: 'Programming Ruby'"   
end

 

这段脚本要做的事情是打开Google 的主页,然后在 Google 唯一的那个文本框内输入“pickaxe”这个字符串,然后按下“Google 搜索”按钮,之后验证搜索结果的页面中是否包含了“Programming Ruby”这个字符串,并根据结果使用puts 函数在屏幕上打印不同的信息。脚本中“#”后面的部分是注释的内容。简单吗?说实话要比那些商业工具录制的脚本还要简单。
         

2、所需要的环境

 

Ruby : 因为是使用 Ruby 实现的,脚本也是 Ruby 的脚本,所以需要在本机安装Ruby。
Watir : 我下载的是Watir 1.4 ,是一个.zip 文件,解压缩以后执行install.rb 就可以了,具体的安装和配置请参见Watir 用户手册。不要怕,虽然是英文的,但是很简单。
WINDOWS 2000 或 XP + IE 5.5 以上版本 : 根据 Watir 网站上的描述,这是他们目前支持的环境。


3、所需的知识背景

 

因为毕竟还是要写代码的,所以开发经验是必需的,任何语言的开发经验都可以——虽然 Ruby 是一个面向对象的脚本语言,不过你可以暂时不理它那么多(别被面向对象、脚本语言之类的词汇吓倒),如果你写过VBScript 或者其他什么代码那么Watir 就是很简单的。不过,需要了解Web 开发,比如 HTML 的基本语法,因为在开发脚本时需要根据Web 页面的源代码来确定对Web 对象的识别方式——当然,也可以借助其他工具来实现,例如 Mozilla Firefox 中提供的“DOM 查看器”(可以在 Mozilla Firefox“工具”菜单下找到,具体的使用方法参见 Mozilla Firefox 帮助)。
另外,测试和自动化测试方面的基本知识还是要有的。

 
4、脚本的生成

 

录制功能就别想了,Watir 没有提供这项功能。如果你非用录制不可,那就选择其他吧。不过就我自己的使用来看,Watir 的脚本写起来比用QTP 或者Rational 的工具录制还要方便和快捷。

 
5、对象的识别、操作和自动验证

 

Watir 提供了对多种常见Web 对象的识别和操作的支持,例如 Hyperlinks 的点击、Checkboxes 的选中和清除、Radio Buttons 的选中和清除、下拉框和列表框的选择、文本框的输入、各种按钮的点击以及 Frame 的访问、弹出窗口的控制等。当然,既然可以识别和操作这些对象,也可以访问这些对象,使测试结果的验证自动化。具体信息可以参见 Watir 用户手册。

 
6、其他特性


如果你熟悉了 Ruby ,再结合其他一些工具,可以在Watir 框架的基础上扩展出很多特性。例如:外部文件或数据库的读取、模块化的开发、可重用的函数库、数据驱动、关键字驱动、脚本的版本化控制以及测试结果的管理,等等。


7、相关链接

 

Watir 主页:http://wtr.rubyforge.org/
Ruby主页:http://ruby-lang.org/en/


就如前面所说的,Watir 的用户手册、FAQ等方面维护的很不错,如果完整的看完Watir 主页上的 sample test 和 User’s Guide 基本上就可以用Watir 开始测试Web 应用了。如果有兴趣进一步研究,可以参考一下 Technical Doc ,也可以读一下Watir 自带的几个示例。

3
1
分享到:
评论
6 楼 shelaine 2011-06-22  
我的firefox是3.6.18 然后我想装插件jssh,没有找到匹配的不知道有人遇到这个问题没?
5 楼 onionzq 2010-08-03  
我上网是通过代理服务器方式上网的,
也执行了set http_proxy=xx.xx.xx.xx(这里是我的proxy地址),


将下面各版本的文件都拷贝到Ruby的安装目录的bin下 C:\Ruby\bin
watir-1.5.2.gem
watir-1.5.5.gem
watir-1.5.6.gem
watir-1.6.2.gem
watir-1.6.5.gem

先后执行下面命令:
   gem install watir-1.6.5.gem (试用了其他几个版本)
   gem install commonwatir-1.6.5.gem  (ruby目录下也有此文件)

都没成功,看来只有在家再试,或者找个已经安装好watir及其相关包的来玩玩了。


4 楼 onionzq 2010-08-03  
我先从创建环境开始,昨天晚上开始了解,还没安装好,继续。。。
3 楼 sss_new 2010-05-19  
实际上linux上只能使用firewatir
2 楼 jsntghf 2009-10-31  
目前Watir支持多种操作系统平台,包括 Windows, Mac, Linux等
1 楼 myali88 2009-10-31  
can not install watir on linux ?

相关推荐

    watir Web自动化测试框架 api

    Watir 是一个使用 Ruby 实现的开源Web 自动化测试框架,相对于那些庞大的商业工具来说,它很小巧,也很灵活,提供的功能也足够用。最近抽时间试用了一下,感觉还不错,准备下一步在公司推广使用。因为 Watir 的网站...

    watir-bonus-1.5.2

    "Watir-Bonus-1.5.2" 是一个专门用于Web自动化测试的工具,它扩展了Watir(Web Application Testing in Ruby)的功能,提供了一系列额外的便利特性,旨在简化和增强网页应用的自动化测试过程。这个版本是1.5.2,表明...

    Ruby-Watir在Ruby中Web应用程序测试

    Ruby-Watir是一种开源自动化测试框架,专门用于在Ruby编程语言中进行Web应用程序的测试。它允许开发者通过编写Ruby代码来模拟用户与浏览器的交互,从而实现端到端的测试。这个工具的名字“Watir”是“Web ...

    基于Ruby的Web自动化测试框架平台应用.pdf

    * Watir 框架简介:Watir 是一个基于 Ruby 语言的开源框架,用于 Web 自动化测试。 * Watir 框架的特点:Watir 框架可以模拟用户访问网页、点击链接、填写表单、点击按钮等操作,满足大部分 Web 自动化测试需求。 * ...

    开源Web自动化测试框架——Watir试用手记

    WebWEB开源Web自动化测试框架——Watir试用手记软件测试Watir是一个使用Ruby实现的开源Web自动化测试框架,相对于那些庞大的商业工具来说,它很小巧,也很灵活,提供的功能也足够用。最近抽时间试用了一下,感觉还...

    watir&ruby测试框架

    Watir,全称Web Application Testing In Ruby,是一个开源的自动化测试框架,它允许使用Ruby语言编写脚本来控制浏览器,进行网页应用的自动化测试。结合Ruby的强大特性和简洁语法,Watir成为了测试社区中备受推崇的...

    Watir的介绍文档:基于RUBY的web UI自动化测试库

    Watir,全称为“Web Application Testing In Ruby”,是一款基于Ruby语言的开源Web自动化测试框架。它的设计目的是模拟人们在浏览器中的行为,如点击链接、填写表单和按下按钮,并能够检查预期的文本是否出现在页面...

    开放Ruby+watir 自动化测试工具介绍+安装说明

    Watir是基于Ruby的一个开源自动化测试框架,它允许编写用于Web浏览器的测试脚本。Watir,这个名字是Web Application Testing in Ruby的缩写,它可以直接与网页元素进行交互,如点击按钮、输入文本、选择下拉项等,...

    watir-bonus-1.5.1.1230.zip

    Watir(Web Application Testing in Ruby)是一个开源的Ruby库,用于自动化浏览器操作,它使得开发者能够用Ruby代码编写测试脚本来与网页交互,进行功能测试和验收测试。 **描述:“Watir开发文档。包括帮助文档,...

    watir 自动化测试相关

    在实际项目中,使用Watir、Cucumber和AutoIt的组合,可以构建出一套全面的Web自动化测试解决方案。首先,通过Cucumber定义清晰的测试场景,然后利用Watir编写具体的测试步骤,最后在遇到Windows交互难题时,调用...

    Watir测试框架介绍

    Watir,全称为Web Application Testing In Ruby,是一个开源的自动化测试框架,主要用于Web应用程序的测试。它允许开发者使用Ruby语言编写测试脚本来控制浏览器,模拟用户的行为,进行功能性和回归性测试。Watir的...

    Watir1.6.5(commonwatir+firewatir+watir)+Ruby186-26

    Watir,全称Web Application Testing in Ruby,是基于Ruby的开源自动化测试框架,专门用于Web应用程序的测试。它允许开发者编写易于理解、可维护的脚本来模拟用户与浏览器的交互。Watir支持多种浏览器,包括Internet...

    watir安装所需要的gem包

    Watir,全称为Web Application Testing in Ruby,是一个用于自动化浏览器操作的开源库,它使得编写测试脚本变得简单直观,可以模拟用户在浏览器中的各种交互行为。在Ruby编程语言环境中,Watir允许开发者通过编写...

    watir网页模式的自动化功能测试工具

    Watir,全称 "Web Application Testing In Ruby",是一种开源、轻量级的自动化测试工具,主要用于Web应用程序的测试。它利用Ruby编程语言的强大特性和简洁语法,为测试人员提供了一种高效且灵活的方式来编写测试脚本...

    Watir自动化测试的实践代码

    Watir(Web Application Testing in Ruby)是一个开源库,允许用Ruby语言编写脚本来控制浏览器并进行自动化测试。本实践代码集合主要针对使用Watir进行Web应用程序测试的场景,旨在帮助初学者理解并掌握自动化测试的...

    watir-backend

    总的来说,Watir-Backend是Ruby自动化测试领域的一个重要组件,它简化了浏览器自动化测试的复杂性,使得开发者能够更加专注于测试逻辑而不是底层实现。通过深入理解和熟练使用Watir-Backend,可以大大提高Web应用的...

Global site tag (gtag.js) - Google Analytics