• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
    • 軟件測試技術
    • 軟件測試博客
    • 軟件測試視頻
    • 開源軟件測試技術
    • 軟件測試論壇
    • 軟件測試沙龍
    • 軟件測試資料下載
    • 軟件測試雜志
    • 軟件測試人才招聘
      暫時沒有公告

    字號: | 推薦給好友 上一篇 | 下一篇

    開源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?梢渣c擊這里下載。根據文檔中說的,最好選擇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

    延伸閱讀

    文章來源于領測軟件測試網 http://www.kjueaiud.com/


    軟件測試技術文章排行榜
    軟件測試技術分類最新內容
    關于領測軟件測試網 | 領測軟件測試網合作伙伴 | 廣告服務 | 投稿指南 | 聯系我們 | 網站地圖 | 友情鏈接
    版權所有(C) 2003-2010 TestAge(領測軟件測試網)|領測國際科技(北京)有限公司|軟件測試工程師培訓網 All Rights Reserved
    北京市海淀區中關村南大街9號北京理工科技大廈1402室 京ICP備2023014753號-2
    技術支持和業務聯系:info@testage.com.cn 電話:010-51297073

    軟件測試 | 領測國際ISTQBISTQB官網TMMiTMMi認證國際軟件測試工程師認證領測軟件測試網

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>