本文所要介紹的 Watir( Web Application Testing in Ruby) 是一個優秀的開源工具,用於開發基於 Web 應用的自動化測試程序。它使用 Ruby 腳本語言,提供了輕量級的自動化測試程序框架和豐富的開發庫,有效地加速了自動化測試程序開發。
引言
隨著 Web 應用的流行與其複雜度的增加,以及軟體過程敏捷化要求的提升,自動化測試成為保障項目成功的一個重要因素。因為自動化測試可以大大地減少測試人員的重複工作,加快測試速度,使測試更加頻繁,從而保證了項目的質量和進度。此種情況下,測試人員更加需要一個功能強大且簡單易用的自動化測試工具,輔助測試人員搭建測試框架,設計自動測試程序,而又儘可能減少自動化測試程序的開發和維護成本 .
本文所要介紹的 Watir( Web Application Testing in Ruby) 是一個優秀的開源工具,用於開發基於 Web 應用的自動化測試程序。它使用 Ruby 腳本語言,提供了輕量級的自動化測試程序框架和豐富的開發庫,有效地加速了自動化測試程序開發。
本文介紹了 Watir 的主要功能和特點,以及如何搭建 Watir 的開發運行環境,並通過一些代碼示例詳細地介紹了構建一個 Watir 自動測試程序的主要步驟。本文同時介紹了用 Watir 開發自動化程序的幾個關鍵技術:如何在複雜頁面中選擇一個合適的對象識別方式;如何使用 Ruby 提供的互動式工具 IRB 來加速 Watir 程序的開發和調試;如何用 YAML 文件管理測試數據,並通過 Watir 程序來讀取和解析;如何繼承 Ruby 的單元測試框架來創建和調用測試用例,以及測試用例集等。
本文的聽眾為對自動化測試有興趣,並且對自動化測試基本知識有一定了解的開發人員和測試人員。
Watir 的主要特性以及使用 Watir 開發自動化程序的優勢
Watir 是一個輕量級的用於開發基於 Web 應用的自動化測試框架,它基於 Ruby 語言,提供了豐富的開發庫,簡化了自動化測試程序開發。下面我們總結了 Watir 的主要一些優良特性:
搭建 Watir 開發運行環境
1. 下載並安裝 Ruby 包
下載 Ruby 包,在 window 平台可下載 Ruby 1.8.6 One-Click Installer,按照嚮導安裝
2. 下載並安裝 Watir 包
注意:Gem 是指任何一個打包好的 Ruby 庫,這些 Ruby 庫通過 Gem 命令來安裝,卸載。
C:\Documents and Settings\Administrator>gem update – system Updating RubyGems Updating rubygems-update |
C:\Documents and Settings\Administrator\>gem install water Successfully installed water-1.5.x Installing ri documentation for water-1.5.x … Installing RDoc documentation for water-1.5.x.. |
3. 在瀏覽器上安裝 Html 查看器插件
獲取網頁對象屬性是開發 GUI 自動化測試程序的必要一步。雖然 Watir 本身沒有提供類似 RFT 中 Object Capture 的對象捕捉器,但在 Watir 程序的開發中,我們可以配合使用一些第三方提供的運行在瀏覽器端的 Html 查看器,以便網頁結構和對象屬性的查看。比如,IE 瀏覽器可安裝 Microsoft IE Explorer Develop Toolbar ; Firefox 瀏覽器,可安裝 Firebug 。這些查看器具有以下類似功能:
我們以 IE 中為例 ( 如圖 1),在 IE 工具欄中點擊游標狀圖標(如圖中紅色方塊標識), IE Developer Toolbar 就會在當前瀏覽器下方打開。其中左邊一欄顯示了該網頁的 DOM 樹。當選中該 DOM 樹上的某個節點時,該節點對應的頁面上的某對象就會高亮閃爍顯示(如圖中 Log In 按鈕被選中);中間一欄列出了選中對象的屬性及屬性值,如圖中,Login 按鈕有三個屬性 name,id,type ;右邊一欄為當前對象的一些特性和風格。
當我們想查看某個對象的屬性時,可以點擊 IE Developer Toolbar 最左上角的圖標,選中該對象,其所在的 DOM 節點,屬性以及屬性值就會列在當前瀏覽器下方。
除此之外,IE Developer Toolbar 還提供了另外一些有用的功能方便自動化程序的開發和調試。如用各種顏色框體標出所有指定的對象類型(如 table cells, table, DIV, images 等),在網頁上列出所有圖片的 ALT 值,所有鏈接的路徑,以及所有對象的類型和 ID 等。
4. 在 Eclipse 集成環境中安裝 Ruby 插件,搭建 Watir 的開發和運行環境。
SciTe 是安裝 Ruby 后自帶的單文檔編輯器,但它不適合較大規模程序開發。而 Eclipse 集成開發環境不僅方便程序的開發和調試,而且它與 CVS 版本控制緊密綁定,並對團隊協作開發很好支持,所以我們可以在 Eclipse 集成環境中安裝 Ruby 插件,搭建 Watir 的開發和運行環境,以下為具體步驟:
創建 Watir 自動化測試程序的基本步驟
在 Watir 開發環境搭建好后,我們開始創建一個 Watir 自動化測試程序項目,通常有以下一些步驟:
require 'watir' # 引用 Watir 庫 ie = Watir::IE.new # 創建一個 IE 瀏覽器實例 ie.goto("https://9.123.109.110:9043/ibm/console ") ie.button(:type, ‘ submit ’ ).click # 識別對象並對對象進行操作 |
[火星人 ] 使用 Watir 加速面向 Web 應用的自動化測試程序的開發已經有884次圍觀