第二章 測試環境搭建(上)

        ------Web自動化測試之Webdriver(python)--從零到熟練(系列)html

    通過上面的討論,咱們已經窺探到自動化測試的端倪,可是要想寫出一個能夠運行的自動化測試用例,咱們還須要更深刻的學習。如下的內容,咱們將一步步的來探討自動化測試的祕密。java

   「工欲善其事,必先利其器。」固然自動化測試也不例外,咱們用到的工具及語言以下:python

(1)Selenium IDE:做爲火狐的一個插件,是咱們Web自動化測試中必不可少的。編程

(2)FireBug:火狐的一個插件,幫助咱們定位頁面元素。瀏覽器

(3)Eclipse:強大的代碼編輯工具,相信你們並不陌生。網絡

(4)PyDevEclipse的插件,用於編輯Python代碼。框架

(5)Python:咱們測試用例的編碼語言,請自行學習,本系統教程是再也不講究Python編程的內容。ide

(6)WebDriverselenium2.0Web自動化測試主要框架。模塊化

2.1 Selenium IDE

2.1.1 Selenium IDE簡介

Selenium是一個用於Web應用程序測試的工具。Selenium測試直接運行在瀏覽器中,就像真正的用戶在操做同樣。支持的瀏覽器包括IEMozilla FirefoxMozilla Suite等。這個工具的主要功能包括:工具

Ø  測試與瀏覽器的兼容性——測試你的應用程序看是否可以很好得工做在不一樣瀏覽器和操做系統之上。

Ø  測試系統功能——建立衰退測試檢驗軟件功能和用戶需求。支持自動錄製動做和自動生成。

Ø  支持pythonNetJavaPerl等不一樣語言的測試腳本。Selenium ThoughtWorks專門爲Web應用程序編寫的一個驗收測試工具。

Selenium IDE

  Selenium IDE是基於FIREFOX瀏覽器的一個插件,提供GUI界面來運行Selenium測試。Selenium IDE提供腳本錄製功能,能夠將用戶在瀏覽器中執行的操做記錄下來,生成各類形式的腳本,能夠將這些腳本保存供之後使用。

2.1.2 Selenium安裝

方法一,安裝Selenium IDE的步驟以下:

Ø  www.openqa.org/selenium-ide/download.action下載Selenium IDE(一個XPI後綴的文件)

Ø  啓動FIREFOX瀏覽器,打開剛纔下載的文件。

Ø  重啓FIREFOX瀏覽器,在工具菜條下應該就能夠看到Selenium IDE菜單項。

方法二,從Firefox瀏覽添加

Ø 打開瀏覽器,打開菜單「工具」à「附加組件」,在打開的頁面搜索Selenium

Ø 安裝Selenium IDE Button,安裝完成的重啓瀏覽器。

Ø 定製工具欄,將Selenium IDE Button拖到工具欄上,而後單擊這個Button,按提示安裝Selenium IDE,這個時候選擇最新的版本便可。

注:Selenium IDE安裝完成後,默認打開了全部支持語言的格式,如圖2.1.2所示,咱們能夠禁用到不用的語言項。

第二章 <wbr>測試環境搭建(上)

2.1.2 Selenium IDE支持的語言格式

2.1.3 Selenium IDE的使用

下面咱們將逐步講Selenium IDE的使用方法:

Ø  安裝Selenium IDE

Ø  啓動Selenium IDE:打開「工具」—>「Selenium IDE」,IDE啓動後,彈出如圖2.1.3.1對話框:

第二章 <wbr>測試環境搭建(上)
2.1.3 Selenium IDE對話框

  上圖標明瞭一些Selenium IDE的主要功能。其中,由CommandTargetValue組成的表格就是腳本,每一個腳本都是由一條一條的Action(行爲)組成,而每一個Action又由(CommandTargetValue)三者組成。Command就是《API參考手冊》提到的內容,Target指的是Web中的某個對象,好比:文字,輸入框等等,若是選取對象呢?呵呵,這裏就用到了XPath,不熟悉能夠參考《XPath的使用》,後面的課程咱們也將會講到相關內容;而Value就是這個對象的值。

Ø  腳本的錄製及運行

      當彈出上面的IDE窗口後,咱們就能夠開始Selenium的腳本錄製了,右上角有個紅色的圓點,當它下按時(如上圖)就表示IDE正在進行腳本錄製。OK,開始錄製,錄製的時候,直接操做Firefox瀏覽器窗口就能夠了,IDE會自動記錄你的操做的,下面我演示一個例子:

1)打開IDE,在Base URL框內輸入你要錄製的網站,如:http://www.baidu.com

2)在地址欄輸入:http://www.baidu.com/,登陸到百度首頁。

3IDE打開的時候就是錄製狀態,若是錄製按鈕沒有按鈕,按下該按鈕而後刷新頁面,在查詢框輸入「hyddd」。

4)按「百度一下」按鈕,查詢結果。

5)進入搜索結果頁面後,右鍵單擊第一條記錄(即:hyddd - 博客園),在右鍵彈出菜單中,單擊「Verify TestPersent hyddd - 博客園」。

6)單擊第一條記錄(即:進入hyddd - 博客園)

7Firefox彈出一個新Tab頁面,並進入了個人博客。

OK,如今看看咱們的Selenium IDE錄製的結果吧!如圖2.1.3.2所示:

                  第二章 <wbr>測試環境搭建(上)

2.1.3.2 腳本錄製結果

     上圖中,中間的表格就是錄製的結果,你能夠按「運行腳本」從新回放腳本看看,值得注意的是,在運行時,Firefox可能會認爲腳本中最後一個操做(即:步驟7)爲非法彈出框,瀏覽器會自動阻止其彈出,這個須要設置一下Firefox,具體位置是:Firefox->Menubar->Tools->options->content->Block pop-up Window,你能夠把鉤去掉或者在Exceptions裏面添加相應的網址。

  到此爲止,腳本錄製圓滿完成!在運行腳本後,你會發現IDE表格的顏色發生了變化,運行前,腳本表格爲白色,成功運行完畢後,表格爲青色,其中還分爲深青色和淺青色兩種,淺青色表示:動做成功,如:打開網頁成功,點擊按鈕成功等等,而深青色表示:判斷正確,如:「hyddd - 博客園」這段文字在頁面中存在等等。

    那若是運行失敗會是什麼樣子呢?如今咱們看看出錯時的狀況吧。如圖2.1.3.3所示:

第二章 <wbr>測試環境搭建(上)
2.1.3.3 腳本運行錯誤的狀況

出錯時,表格可能會出現兩種顏色,一種是淺粉紅色,一種是深粉紅色。淺粉紅色表示判斷結果爲false,這種狀況用例仍是會繼續執行下去,判斷的失敗不會影響案例的運行,深粉紅色表示動做失敗,如:沒有找到按鈕等(如上圖),這種狀況下案例會中止運行。

2.1.4 Selenium IDE其餘的重要功能

Ø  腳本轉化保存

Selenium IDE錄製完成腳本後,通過咱們回放驗證,發現能夠達到咱們的要求,此時咱們最想作的事情就是把腳本轉化成咱們指望的形式保存來了。

   不要擔憂,Selenium IDE有這個功能,如圖2.1.4.1所示:

第二章 <wbr>測試環境搭建(上)

2.1.4.1 導出錄製的腳本

  打開「文件」-->Export Test Case As…,打開的二級菜單中就是能夠轉化成的格式。在咱們安裝Selenium IDE的時候,咱們只保存了pythonjava格式的,而在此只有這兩個格式。此時咱們須要第一種格式「python2/unittest/WebDriver,而後在打開的對話框中輸入文件名,擴展名輸入「.py,保存便可!

Ø  驗證定位方式是否正確

Selenium IDE雖然能夠錄製腳本,但是在咱們使用過程當中,若是測試用例是採用模塊化編碼時,不須要反覆錄製的。此時,IDE就能夠幫咱們驗證咱們的定位方法是否正確。

如圖2.1.4.2所示:具體驗證方法,咱們將在定位頁面元素章節講解。

第二章 <wbr>測試環境搭建(上)

  2.1.4.2 Selenium IDE驗證元素定位

2.2 FireBug

2.2.1 FireBug簡介

Firebug是網頁瀏覽器 Mozilla Firefox下的一款開發類插件,現屬於Firefox的五星級強力推薦插件之一。它集HTML查看和編輯、JavaScript控制檯、網絡情況監視器於一體,是開發JavaScriptCSSHTMLAjax的得力助手。Firebug如同一把精巧的瑞士軍刀,從各個不一樣的角度剖析Web頁面內部的細節層面,給Web開發者帶來很大的便利

2.2.2 FireBug的使用

FireBug的安裝和使用,能夠參考這個文檔:http://jingyan.baidu.com/article/fd8044fa97e08c5030137a6c.html,此文檔把FireBug的基本使用方法都介紹了一下,仍是比較詳細的,在此就不一一介紹了!

下面我就把咱們自動化測試中對Firebug的應用,以一個實例來簡單介紹一下:

Ø  頁面元素定位

(1)打開微博,登陸一個帳號,以本人的帳號爲例。

(2)查看個人微博暱稱「潛龍0318」,在頁面HTML編碼中的節點,按圖2.2.2.1中的步驟所示:

第二章 <wbr>測試環境搭建(上)
2.2.2.1 查看頁面元素

步驟講解:

(a) 單擊瀏覽器工具欄上Firebug啓動按鈕,圖中1處,啓動Firebug

(b)單擊firebug元素查看按鈕,圖中2處,而後將鼠標移到要定位的元素上,如圖中標3處,當暱稱「潛龍0318」被框中後,單擊鼠標。

(c) 此是Firebug HTML標籤下顯示的內容被選中的內容,就是暱稱對應的元素在HTML中的位置,找到這個位置後,咱們就能夠編寫元素定位的方法了。

Ø  定位方法惟一性查找

當咱們用Firebug查到一個元素的某個屬性值爲「feed_list,欲用xpath定位,可是若是這個元素的這個屬性在頁面中不惟一,並且這個元素不是第一個符合條件的元素時,則會定位失敗。因此定位前咱們須要查看一下惟一性!

如圖2.2.2.2所示:

第二章 <wbr>測試環境搭建(上)
2.2.2.2 查找feed_list的結果

Firebug的查找框輸入「feed_list,而後單擊回車查找。此時就會發現有不少條件條件的元素,證實這個屬性值不惟一,因此不能用這個屬性值定位。

相關文章
相關標籤/搜索