複製鏈接
請複製以下鏈接發送給好友

Watir

鎖定
Watir全稱是“Web Application Testing in Ruby”,發音類似“water”。它是一種基於網頁模式的自動化功能測試工具。
外文名
Web Application Testing in Ruby
詞    目
Watir
發音類似
water
基    於
網頁模式的自動化功能測試工具

Watir簡介

Watir, pronounced "water", is an acronym standing for "Web Application Testing in Ruby". Watir is a toolkit used to automate browser-based tests during web application development.

Watir用途

Watir是一個Ruby庫,使用多版本瀏覽器進行Web應用程序測試。
Watir可以使用IE(IE5.5及以上版本),Firefox,Chrome進行Web應用測試。支持Windows(2000及以上版本),Linux,Ubuntu,Mac。
Watir可以模擬用户訪問網頁、點擊鏈接,填寫表單,點擊按鈕。
Watir可以模擬用户驗證頁面內容。
Watir不能做什麼?
Watir不能用於Ajax control的測試。
Watir不支持Activex的測試
Watir不支持IE Dialog的支持(以前曾經支持過)。

Watir測試用例

1.打開編輯器
2.以.rb為你的文件擴展名
3.在測試文件的第一句寫上“require 'watir'”,確保可以訪問Watir工具。(注:根據環境配置的不同,可能需要再多加上“require 'rubygems'”才能生效)
4.打開瀏覽器並轉到要測試的應用
5.與之交互並設計你的testcase
6.在測試腳本中使用Watir方法
7.驗證結果

WatirAPI介紹

文本框
<INPUT id= “email”name=”_fmu.u._0.e”value=””/>
方法1:ie.text_field(:id,’email’).set(“文本內容”)
方法2:ie.text_field(:name.’email’).set(“文本內容”)
方法3:ie.text_field(:name,”email”).clear
下拉框
方法1:ie_select_list(:name,”cert_no”).select(“身份證”)
方法2: ie_select_list(:name,”cert_no”).clearSelection
鏈接:
方法1:ie.link(:text,”google”).click
方法1:ie.checkbox(:name,”checkme”).set
方法2:ie.checkbox(:name,”checkme”).clear
方法3:values = ie.checkbox(:name,”checkme”).value
//多個同名複選框的處理,運用index方法
方法1:ie.checkbox(:name,”checkme”,”2”).set
方法1:ie.radio(:name,”clickme”).set
方法2:ie.radio(:name,”clickme”).clear
一般按鈕:
方法1:ie.button(:value,”Click Me”).click
方法2:ie.button(:name,”clickme”).click
Submit按鈕
方法:ie.button(:value,”Submit”).click
圖片按鈕:
方法:ie.button(:name,”doit”).click
Form中無按鈕
方法1:ie.form(:name,”loginform”).submit
方法2:ie.form(:action,”login”).submit
獲取隱含對象值
方法:values = ie.hidden(:name,’field1’).value

Watir示例腳本

require 'rubygems' 這句根據情況可選
require 'watir'
ie = Watir::IE.new #新建一個IE瀏覽器的實例
ie.goto("這裏輸入百度首頁網址") #打開百度首頁,因為百科內容不能含網址,所以這裏沒有寫成url
#百度首頁搜索輸入框即為id為"kw"的文本框,設置搜索關鍵詞為"watir"
ie.text_field(:id, "kw").set("watir")
#點擊搜索按鈕,即id為"su"的button
ie.button(:id, "su").click
if ie.contains_text("Watir簡介") #搜索結果的頁面包含"Watir簡介"字樣
puts "Test Passed."
else
puts "Test Failed!"
end