`
candyania
  • 浏览: 33750 次
  • 性别: Icon_minigender_2
  • 来自: 上海
社区版块
存档分类
最新评论

watir语法(Web Application Testing in Ruby)

阅读更多
# 使用Watir工具,需要在脚本中加上    
require 'watir'  
# 创建一个IE的实例    
ie = Watir::IE.new    
# 或者在创建的同时直接转到页面    
ie = Watir::IE.start('http://www.text.com/')    
# Watir使用start方法同时创建一个浏览器实例并转到一个页面。    
# IE浏览速度    
ie.speed = :fast    
ie.speed = :slow    
# 页面导航    
ie.goto('http://www.text.com/')    
# 注: ie.goto还可以运行javascript的代码如: ie.goto("javascript: ie.document.write("Hello World");")    
# 取得当前网页的网址    
ie.url    
# 点击超链接    
ie.link(:text , "Pickaxe").click    
ie.link(:href, /http:\/\/pragmaticprogrammer\.com/).click    
ie.link(:name => 'foo', :index => 1).click    
# 超链接的uri    
ie.link(:text , "Pickaxe").href    
ie.link(:index, 1).href    
ie.link(:text => "reply", :index => 2).href    
# 超链接的文本    
ie.link(:href , /http:\/\/pragmaticprogrammer\.com/).text    
=begin  
对应的HTML代码为:    
<a href="http://pragmaticprogrammer.com/titles/ruby/" mce_href="http://pragmaticprogrammer.com/titles/ruby/">Pickaxe</a>    
=end  
# img标签    
ie.image(:name, 'image').src    
ie.image(:index, 2).src    
=begin  
对应的HTML代码为:    
<img name = img src="http://pragmaticprogrammer.com/titles/ruby/top.gif" mce_src="http://pragmaticprogrammer.com/titles/ruby/top.gif">    
<img name = img src="http://pragmaticprogrammer.com/titles/ruby/head.gif" mce_src="http://pragmaticprogrammer.com/titles/ruby/head.gif">    
=end  
# 设置复选框    
ie.checkbox(:name, "checkme").set    
ie.checkbox(:name, "checkme", "1").set # 使用name和value属性设置复选框    
# 清除复选框    
ie.checkbox(:name, "checkme").clear    
ie.checkbox(:name, "checkme", "1").clear # 使用name和value属性清除复选框    
=begin  
对应的HTML代码为:    
<input type = "checkbox" name = "checkme" value = "1">    
=end  
# 设置单选框    
ie.radio(:name, "clickme").set    
ie.radio(:name=>'clickme', :index=>2).set    
ie.radio(:name, "clickme", "1").set # 使用name和id属性设置单选框    
# 使用name属性清除单选框    
ie.radio(:name, "clickme").clear    
ie.radio(:name, "clickme", "1").clear # 使用name和id属性清除单选框    
=begin  
对应的HTML代码为:    
<input type = "radio" name = "clickme" id = "1">    
<input type = "radio" name = "clickme" id = "2">    
=end  
# 设置下拉框    
ie.select_list(:name, "selectme").select('Python') # 使用text属性和值来设置下拉框    
ie.select_list(:name, "selectme").select_value('2') # 使用value属性和值来设置下拉框    
# 使用name属性和值来清除下拉框    
ie.select_list(:name, "selectme").clearSelection   
=begin  
对应的HTML代码为:    
<select name = "selectme">    
<option value = 1>Ruby    
<option value = 2>Java    
<option value = 3>Python    
<option value = 4>C    
</select>    
=end  
# 文本的框设置    
ie.text_field(:name, "typeinme").set("Watir World")    
# 清空文本输入框    
ie.text_field(:name, "typeinme").clear    
=begin  
对应的HTML代码为:    
<input type = "text" name = "typeinme">    
=end  
# 通过值或name属性点击button    
ie.button(:value, "Click Me").click    
ie.button(:name, "clickme").click    
=begin  
对应的HTML代码为:    
<input type = "button" name = "clickme" value = "Click Me">    
=end  
# 通过值或name属性点击Submit    
ie.button(:value, "Submit").click    
ie.button(:type, "Submit").click    
ie.button(:name, "Submit").click    
=begin  
对应的HTML代码为:    
<form. action = "submit" name = "submitform" method="post">    
<input type = "submit" value = "Submit">    
</form>   
=end    
# 表单中的图片按钮    
ie.button(:name, "doit").click    
=begin  
对应的HTML代码为:    
<form. action = "submit" name = "doitform" method="post">    
<input type="image" src = "images/doit.gif" name = "doit">    
</form>    
=end  
# 没有按钮的表单    
ie.form(:name, "loginform").submit # 通过name,action以及method属性来提交表单    
ie.form(:action, "login").submit    
=begin  
对应的HTML代码为:    
<form. action = "login" name = "loginform" method="get">    
<input name="username" type="text">    
</form>   
=end    
# 框架    
ie.show_frames #可以打印出当前页面框架的数量和名称    
# Watir允许通过名称属性来访问框架   
ie.frame("menu")    
# 如果要访问menu框架中的一个超链接,可以    
ie.frame("menu").link(:text, "Click Menu Item").click    
# 嵌套框架    
ie.frame(:name, "frame1").form(:name, 'form1')    
# 新窗口    
# 一些Web应用会弹出新窗口或打开一个新窗口,可以使用attach方法来访问并控制新窗口。通过标示新窗口的URL或者title来访问。    
ie2 = Watir::IE.attach(:url, 'http://www.text.com/')    
ie3 = Watir::IE.attach(:title, 'Test New Window')    
# 也可以使用正则表达式    
ie4 = Watir::IE.attach(:title, /Test New/)    
# 注意:不要把新窗口分配到你的ie变量,最好给新窗口一个不同的名字    
# 访问Table元素:    
t = $ie.table(:id,"data")    
t = Table.new($ie,:id,"data")    
t = $ie.table[1]    
# tr,td元素    
tr = ie.row(:id,"title")    
tr = TableRow.new(ie,:id,"title")    
td = ie.cell(:id,"name")    
td = TableCell.new(ie,:id,"name")    
# Watir中Table,TableBody,TableRow,TableCell这几个类,都提供了一个索引方法"[](index)"来定位其下一层的子元素对象,该方法为实例方法,"index"为传入的参数,索引值从1开始,而非从0开始。    
# 用法如下:    
# 以table的第一行,第一个元素为例:    
tr1 = t.[](1)    
td1 = tr1.[](1)    
# 也可以连续访问:td1 = t.[](1).[](1)    
# 如果td中还有其他元素,可以通过td的实例方法直接访问,以checkbox为例:    
cb = td1.checkbox(:id,'navigate_id').click    
=begin  
对于以上所提到的对象,都是从Element继承而来,所以click,enabled?,exists?,fireEvent,flash,focus等方法都直接可以使用。    
如果你的td元素定位准确了,且鼠标响应事件没有错误的话,那么应该能看到点击后的效果。    
建议多查一下Watir的API Reference http://wtr.rubyforge.org/rdoc/    
=end  
# 代码如下:    
t = ie.table(:id,"CoolMenu2menutable")    
td_logout=t.[](1).[](16)    
# 先找到Table,再索引TR,再索引到TD    
# 运行Ruby时不显示browser方法    
# 运行Ruby程序文件时在后面加 "-b"    
# ex:    
test.rb -b    
# 也可以做成.bat文件    
ex: test.bat    
ruby.exe test.rb -b    
# 获取隐含对象值    
# <INPUT type=hidden value="您的Email" name="field1">   
values = ie.hidden(:name, 'field1').value    
# 获取窗口对象    
# 方法1:    
ie2 = Watir::IE.attach(:url,'http://www.google.cn/') #根据URL获取    
# 方法2:    
ie3 = Watir::IE.attach(:title,'Google') #根据窗口标题获    
# 方法3:    
ie4 = Watir::IE.attach(:title, /google.cn/) #正则表达式匹配获取   


本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/imdarkrocky/archive/2009/06/27/4300312.aspx

 

分享到:
评论

相关推荐

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

    Watir,这个名字是Web Application Testing in Ruby的缩写,它可以直接与网页元素进行交互,如点击按钮、输入文本、选择下拉项等,从而实现对Web应用程序的自动化测试。 使用Watir,你可以创建强大的测试脚本来验证...

    watir语法详解和描述

    Watir,全称为Web Application Testing in Ruby,是一个用于自动化浏览器操作的开源测试框架。它允许开发者用Ruby语言编写脚本来模拟用户与网页的交互,如点击链接、填写表单、选择下拉选项等。Watir的目标是使测试...

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

    这个工具的名字“Watir”是“Web Application Testing in Ruby”的缩写,它将简洁的Ruby语法与强大的网页自动化能力相结合,提供了高效且易于理解的测试解决方案。 Watir支持多种主流浏览器,如Internet Explorer...

    watir介绍及安装

    **Watir(Web Application Testing in Ruby)**是基于Ruby的开源自动化测试框架,专门用于Web应用的测试。Watir的主要优势在于它的轻量级设计和对多种浏览器及操作系统的广泛支持。它可以与IE、Firefox、Chrome等...

    ruby 2.00 selenium webdriver,watir webdriver 备份打包

    Watir(Web Application Testing in Ruby)WebDriver是Watir库的一个分支,它结合了Watir的易用性和Selenium WebDriver的强大功能。Watir最初设计的目标是让测试像用户一样与网站进行交互,它的语法直观且易于理解,...

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

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

    Watir自动化测试的实践代码

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

    watir&ruby测试框架

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

    ruby+watir 测试框架

    Watir,全称Web Application Testing In Ruby,是Ruby库的一个集合,它允许用Ruby代码来控制浏览器,并自动执行各种网页操作。 在Ruby+Watir测试框架中,我们可以通过编写Ruby脚本来模拟用户在Web应用中的行为,如...

    RUBY ON WATIR

    Watir,全称Web Application Testing in Ruby,是一个允许用Ruby编写浏览器自动化脚本的库,它能够模拟用户在浏览器中的各种操作,如点击链接、填写表单等。Cucumber则是一个行为驱动开发(BDD)的工具,它使用自然...

    Ruby+Watir搭建自动化测试框架

    Watir,全称Web Application Testing in Ruby,是基于Ruby的一个开源自动化测试工具。它允许测试人员使用Ruby脚本来控制和交互网页元素,如按钮、链接、对话框、图像、表格等HTML对象。Watir的主要优点包括: 1. **...

    watir 自动化测试相关

    Watir,全称Web Application Testing in Ruby,是一款强大的开源自动化测试工具,主要用于Web应用程序的测试。它允许使用Ruby语言编写测试脚本,与浏览器进行交互,如点击链接、填写表单、验证页面元素等,极大地...

    Watir API 1.6.2和1.6.5

    Watir,全称为“Web Application Testing in Ruby”,是一个开源的Ruby库,用于自动化浏览器操作。它允许开发者通过编写Ruby代码来控制浏览器,进行网页的浏览、点击、填写表单等操作,从而实现对Web应用的测试。...

    IEDriverServer_Win32

    Watir(Web Application Testing In Ruby)是一种开源工具,允许通过Ruby代码自动化浏览器操作,而Watir-webdriver是其早期版本,用于与WebDriver接口进行集成。它为开发人员和测试人员提供了一种简单、面向对象的...

    Longboard - Combining Fitnesse and Watir-开源

    Longboard是一个专为Web测试设计的强大工具,它巧妙地将Fitnesse验收测试框架与Watir(Web Application Testing in Ruby)框架结合在一起,提供了高效且易读的脚本桥梁。这个工具的核心价值在于,它使得开发人员和非...

    jruby-1.5.5+OperaWatir+RSpec

    OperaWatir 是一个用于自动化浏览器操作的开源库,它是 Watir(Web Application Testing in Ruby)家族的一部分。Watir 允许编写脚本直接与网页交互,进行功能和集成测试。OperaWatir 是针对 Opera 浏览器的扩展,它...

    ruby-2.1.1.tar.gz

    Watir,全称Web Application Testing In Ruby,是一个开源的自动化测试框架,它允许使用Ruby语言来编写浏览器自动化测试脚本。Watir直接与浏览器交互,可以模拟用户在网页上的各种操作,如点击链接、填写表单、验证...

    watir gui test tool

    沃特尔,全称为Web Application Testing in Ruby,是一个开源的自动化测试框架,主要用于对Web应用程序的图形用户界面(GUI)进行自动化测试。它提供了一种简单、直观的方式来编写测试脚本,允许测试人员通过Ruby...

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

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

Global site tag (gtag.js) - Google Analytics