RubyWatir提供WEB对象支持

Ruby Watir是一款基于Ruby语言的自动化测试框架,这款框架的功能也是异常强大的,它可以灵活方便的帮助我们完成各种需求。#t#

为博兴等地区用户提供了全套网页设计制作服务,及博兴网站建设行业解决方案。主营业务为网站设计、成都网站设计、博兴网站设计,以传统方式定制建设网站,并提供域名空间备案等一条龙服务,秉承以专业、用心的态度为用户提供真诚的服务。我们深信只要达到每一位用户的要求,就会得到认可,从而选择与我们长期合作。这样,我们也可以走得更远!

Watir是基于Ruby这种面向对象的脚本语言的,它用的是一种纯粹的编程语言,并且它是一个开源的产品,同时它还允许对网页 上的对象的直接操作,例如html和JavaScript 。不过Watir仅仅是对IE进行控制的,如果想要操控其他的浏览器例如Firefox或Safari就需要安装相应的Watir库,参考这里。总之,Watir是一个面向浏览器来开发和运行的一个自动化测试工具。

Ruby简介

ruby 是一种完全的面向对象的语言,语法简单,是解释执行的脚本语言,代码的可读性高,号称“最接近自然语言的编程语言”。Ruby语言起源于日本,它的研发者是日本人松本行弘(Matsumoto Yukihiro)。松本行弘在1993年开始着手Ruby语言的研发工作,他开发Ruby语言的初衷是为了提高编程的效率。ruby语言的一些特点包括(1)动态载入。可以在运行时候重定义自己,类也可以在运行时继承或取消继承。 (2)自动内存管理机制。 (3)多精度整数。 (4)迭代器和闭包。 (5)开源项目。有大量活跃的社区支持Ruby语言。

构建环境

因为Ruby Watir是由Ruby实现的,所需要的脚本也是Ruby的脚本,所以你需要在本机先安装Ruby。安装在Windows上面的Ruby可以点击这里下载,我安装的是1.8.6版本的,也就是***版的。当你完成Ruby的安装后,打开命令行窗口,输入gem install watir 就会将watir安装到相应的文件夹下面,这个命令是将整个watir及相关的一些文档和文件一起安装,如果只想安装某个特定的gem的话,后面可以加上参数- -ignore-dependencies 。这样开发环境就很简单的搭建完成。

脚本示例

下面是我写的一个应用watir对passport测试站点自动注册邮箱的一个例子,在搭建完环境以后你可以将下面的代码拷贝到Ruby自带的解释器SciTE中保存为test_passport.rb, 只要是后缀名为.rb就可以,然后点F5运行调试就能看到结果。下面的代码只是实现了最基础的一些功能,主要是通过这个例子能够对Ruby Watir有个直观的认识。

 
 
 
  1. require 'watir'
  2. include Watir
  3. #生成一个随机的邮件地址
  4. @mail_address=Array.new(3){(rand
    (122-97)+97).chr}.join+Array.new(6)
    {(rand{10}*10).to_i.abs}.join+"@easi.com"
  5. #密码这一块为了方便管理可以写死一个好
    记得密码,例如‘123456‘
  6. @mail_pwd="123456"
  7. ie=IE.new
  8. #passport测试站点
  9. ie.goto ('accountservices.
    passport-int.net/reg.srf?')
  10. #选中radio button
  11. ie.radio(:name,"HasEmail").set
  12. #点击continue按钮
  13. ie.button(:name, “Continue").click
  14. ie=IE.attach(:title, “Sign Up")
  15. #在text field中填写所需要的信息
  16. ie.text_field(:name,"p4181")
    .set(@mail_address)
  17. puts 'Email address: '+@mail_address
  18. ie.text_field(:name,"p3e8").set(@mail_pwd)
  19. puts 'Password: '+@mail_pwd
  20. ie.text_field(:name,"p10000000").set(@mail_pwd)
  21. #在下拉列表中选中需要的选项
  22. ie.select_list(:name,"p200000000000bb8")
    .select("Mother's birthplace")
  23. ie.text_field(:name,"p200000000000bb9"
    ).set("11111")
  24. ie.text_field(:name,"p10000002").set("0")
  25. ie.button(:name,” Continue").click
  26. ie.text_field(:name,"p1000000e").set
    (@mail_address)
  27. ie.button(:name, “Continue").click
  28. ie.button(:name,” Continue").click
  29. ie=IE.attach(:title, “Account Services")
  30. ie.goto ("http://login.live-int
    .com/logout.srf?")
  31. ie.close

上面这段脚本主要做的事情就是通过‘goto‘语句来到一个测试passport的注册站点,然后通过查找指定页面元素的填上所需要的信息例如用户名,密码等,在通过点击几次确定以后,就完成注册,其间用puts语句在屏幕上打印注册完成所用的用户名和密码。脚本中#后面的绿色语句都是注释。通过这个例子可以很直观的看到Ruby Watirr用来做web测试的易用性,而且语句非常接近自然语言,十分容易上手。

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

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

知识背景

编写Ruby Watir脚本时为了确定页面上的元素,需要察看网页的源文件,所以在编写watir自动化测试脚本仅仅需要了解HTML的基础知识和基本编程基础。为了方便查找和定义页面元素可以安装IE Developer Toolbar, 这个工具可以帮你轻松定位网页上的每个元素。下载地址可以从微软网站上去找。

网站名称:RubyWatir提供WEB对象支持
转载来于:http://www.36103.cn/qtweb/news20/21970.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联