選擇瀏覽器開始測試—Selenium自動化測試指南(2)
(51Testing軟件測試網獲人民郵電出版社和作者授權連載本書部分章節。任何個人或單位未獲得明確的書面許可,不得對本文內容復制、轉載或進行鏡像,否則將追究法律責任。)
操作完畢后,可看到如圖5-17所示的新建項目。
圖5-17 新建的Java項目
2.添加引用
(1)在Package Explorer中用鼠標右鍵單擊Project1,選擇Properties,如圖5-18所示。
(2)選擇Java Build Path,在右邊選擇Libraries,單擊Add External JARs,如圖5-19所示。
圖5-18 選擇Properties菜單命令
圖5-19 Add External JARs按鈕
(3)選擇要添加的jar文件,如圖5-20所示。
圖5-20 選擇要添加的Jar文件
(4)單擊“打開”按鈕后,再單擊Add External JARs按鈕,如圖5- 所示。
(5)選擇Selenium的Libs文件夾中所有與Java相關的基礎框架,如圖5- 所示。
圖5- 選擇與Java相關的基礎框架
(6)單擊“打開”按鈕,然后單擊OK按鈕在Package Explorer中,可以看到剛才添加的包,如圖5-21所示。
圖5-21 查看添加的包
(7)在main函數中輸入如圖5-22所示的代碼,然后按F11執行。
圖5-22 Java代碼
運行結果如圖5-23所示。
在本章中的所有Java程序都可按照這種方式進行創建。
圖5-23 程序運行結果
5.3 選擇瀏覽器開始測試
要開始測試,首先得清楚要測試什么瀏覽器,在Selenium 2中,一共支持以下幾種瀏覽器的測試。
Firefox (FirefoxDriver)。
IE (InternetExplorerDriver)。
Chrome (ChromeDriver)。
Opera (OperaDriver)。
Android (AndroidDriver)。
iPhone (IPhoneDriver)。
需要注意的是,其中前3個瀏覽器是很容易就能測試的,只需在電腦中安裝相應的瀏覽器就可以開始測試了。
而對于Opera瀏覽器,C#和Java的處理方式各不相同。而對于Android和iPhone,它們在測試前需要安裝支持軟件,這些都將在“8.1 對Opera/IPhone/Android進行測試”中進行介紹。
所以,在最開始階段,假定只會用到前面3種瀏覽器,并且已經在自己機器上進行過安裝,然后就可以開始測試了。
要開始測試,首先得創建Selenium的實例,也就是對應的Driver。
如果需要對Firefox進行測試,則需要用到FirefoxDriver,代碼如程序清單5-3或程序清單5-4所示。
程序清單5-3 C#代碼
usingSystem; |
程序清單5-4 Java代碼
packageProject1; |
注意程序清單5-3和程序清單5-4中引用了一個名為OpenQA.Selenium.Firefox的命名空間,FirefoxDriver位于該命名空間內。
如果要使用IE,則命要對名空間和實例化對象部分更改,如程序清單5-5或程序清單5-6所示。
程序清單5-5 C#代碼
using System; using OpenQA.Selenium; using OpenQA.Selenium.IE; namespace ConsoleApplication1 { class Program { static void Main(string[] args) { IWebDriver driver =new InternetExplorerDriver(); } } } |
程序清單5-6 Java代碼
package Project1; |
對Chrome也是一樣的,只需將命名空間改為OpenQA.Selenium.Chrome,實例化對象改為new ChromeDriver()即可。
編譯并執行程序清單的代碼,對應的瀏覽器將會打開,如圖5-24所示。
圖5-24 打開的瀏覽器
5.4 瀏覽器導航對象Navigation
打開了瀏覽器器之后,就可以打開指定的頁面來進行測試了。在Selenium 1中,可以直接通過Selenium的open()方法來打開頁面,但在Selenium 2中則不同,要導航頁面,需要用到Navigation對象。
可以通過WebDriver的Navigate()方法獲得Navigation對象實例,代碼如程序清單5-7和程序清單5-8所示。
程序清單5-7 C#代碼
IWebDriver driver = new FirefoxDriver(); |
程序清單5-8:Java代碼
WebDriver driver = new FirefoxDriver(); |
在獲取該對象后,就可以執行跳轉到指定URL、前進、后退、刷新頁面等操作了。
5.4.1 GoToUrl()/to()
對C#來說,可以用GoToUrl()方法來實現頁面的跳轉;而對Java來說,可以使用to()來進行跳轉。在這兩個方法中,只需將URL作為參數即可,如程序清單5-9或程序清單5-10所示。
程序清單5-9 C#代碼
IWebDriver driver = new FirefoxDriver(); |
程序清單5-10 Java代碼
WebDriver driver = new FirefoxDriver();
Navigation navigation = driver.navigate();
navigation.to(http://www.baidu.com);
執行代碼,將打開百度主頁,如圖5-25所示。
圖5-25:跳轉到百度主頁
注意:執行GoToUrl()/to()方法時,代碼會自動等待頁面加載完畢再執行下一句,也就是瀏覽器狀態欄為“完成”時再執行下一句。
5.4.2 Back()/Forward()
在瀏覽器上,可以按“前進”和“后退”按鈕來進行導航,通過Back()/Forward()方法,也可以實現這種導航功能。
下面將舉例說明先打開百度主頁,再打開Google主頁,之后進行后退和前進操作,代碼如程序清單為防止執行過快,每個操作后面加了3秒等待時間Thread.Sleep(3000)。
程序清單5-11 C#代碼
using System; |
本文選自《Selenium自動化測試指南》第五章節,本站經人民郵電出版社和作者的授權,近期將進行部分章節的連載,敬請期待!
版權聲明:51Testing軟件測試網獲人民郵電出版社和作者授權連載本書部分章節。
任何個人或單位未獲得明確的書面許可,不得對本文內容復制、轉載或進行鏡像,否則將追究法律責任。
相關文章:
安裝并引用Selenium 2—Selenium自動化測試指南(1)
posted on 2013-08-30 09:13 順其自然EVO 閱讀(3088) 評論(0) 編輯 收藏 所屬分類: selenium and watir webdrivers 自動化測試學習