• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

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

发布: 2007-5-05 18:40 | 作者: seanhe | 来源: cnblog | 查看: 214次 | 进入软件测试论坛讨论

领测软件测试网

javascript:;" onClick="javascript:tagshow(event, 'Watir');" target="_self">Watir MILY: 宋体">是一个使用 Ruby 实现的开源Web 自动化测试框架,相对于那些庞大的商业工具来说,它很小巧,也很灵活,提供的功能也足够用。最近抽时间试用了一下,感觉还不错,准备下一步在公司推广使用。

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

1.       脚本示例

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

   require 'watir'   # the watir controller

   # open the IE browser

   ie = Watir::IE.new

   # Step 1: go to the test site: http://www.google.com

   ie.goto (http://www.google.com)

   # Step 2: enter 'pickaxe' in the search text field

   ie.text_field(:name, "q").set("pickaxe")       # q is the name of the search field

   # Step 3: click the 'Google Search' button

   ie.button(:name, "btnG").click                 # "btnG" is the name of the Search button

   # Actual Result: Check that the 'Programming Ruby' link appears on the results page

   if  ie.contains_text("Programming Ruby") 

      puts "Test Passed. Found the test string: 'Programming Ruby'. Actual Results match Expected Results."

   else

      puts "Test Failed! Could not find: 'Programming Ruby'"

   end

   # End of test: Google search

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

2.       所需要的环境

Ruby : 因为是使用 Ruby 实现的,脚本也是 Ruby 的脚本,所以需要在本机安装 Ruby。可以点击这里下载。根据文档中说的,最好选择Ruby 1.8.2-14 或者更高的版本,我安装的是Ruby 1.8.2-15 Stable Release

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');" target="_self">QTP 或者 Rational 的工具录制还要方便和快捷。

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

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

6.       其他特性

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

7.       相关链接

Watir 主页:http://wtr.rubyforge.org/

Ruby中文手册:http://www.ruby-cn.org/doc.html

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

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



TAG: Watir

延伸阅读

文章来源于领测软件测试网 https://www.ltesting.net/


软件测试技术文章排行榜
软件测试技术分类最新内容
关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备2023014753号-2
技术支持和业务联系:info@testage.com.cn 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网