:::
所有書籍
「Selenium」目錄
MarkDown
前言
前言
1. Selenium簡介
2. XPath的使用【ZZ】
3. Selenium API參考手冊【ZZ】
4. Selenium IDE的使用
5. 第一個Selenium RC測試案例
6. 深入瞭解Selenium RC工作原理(1)
7. 深入瞭解Selenium RC工作原理(2)
8. 玩轉Selenium Server
9. Selenium RC服務器命令行參數列表【ZZ】
2. XPath的使用【ZZ】
Selenium ======== 一.Selenium是什麼? --------------- Selenium是ThroughtWorks公司一個強大的開源Web功能測試工具系列,本系列現在主要包括以下4款: 1. Selenium Core:支持DHTML的測試案例(效果類似數據驅動測試),它是Selenium IDE和Selenium RC的引擎。 2. Selenium IDE:FireFox的一個插件,支持腳本錄製。 3. Selenium RC:Selenium Remote Control。後續的系列文章我會主要針對Selenium RC展開介紹。 4. Selenium Grid:允許同時並行地、在不同的環境上運行多個測試任務,極大地加快Web應用的功能測試。 二.選擇合適的Selenium工具 ------------------ 既然Selenium工具有4款這麼多,那到底如何選擇呢??我從"[Selenium官網](http://wiki.openqa.org/pages/viewpage.action?pageId=763)"這裡找了一個表:
Selenium IDE
Selenium Remote Control
Selenium Core
Selenium Core HTA
瀏覽器支持
僅Firefox
很多
所有
僅IE
需要遠程安裝
否
否
是
否
支持 HTTPS/SSL
是
是\*
是
是
支持跨域
是
是\*
否
是
需要Java
否
是
否
否
將測試結果保存到磁盤
是
是
否
是
多語言支持
僅Selenese
很多
僅Selenese
僅Selenese
這裡沒有介紹Selenium Grid,但介紹了另外一個Selenium Core HTA,Selenium Core HTA其實是Selenium Core的額外模式,你只要Selenium Core配置稍加修改,即為HTA模式,Selenium Core HTA可以在IE最高安全等級(特權)下工作,這意味著它僅能在IE下工作,由於限制較大,下面將排除對Selenium Core HTA的討論。 **1.瀏覽器支持:** (1).Selenium IDE僅可以在Firefox中工作。 (2).Selenium Remote Control支持很多瀏覽器,包括最常用的:firefox,ie,safari等N款瀏覽器。 (3).Selenium Core支持的瀏覽器是最廣的,這點和它的實現有關。作為IDE和RC的引擎,Selenium Core幾乎可以在任何瀏覽器中工作。 **2.需要遠程安裝:**是否需要在被測網站的服務端安裝? 這裡只有Selenium Core需要,這是出於同源策略的原因。這也是Selenium Core一個很大的限制,試問,如果你要測試Google.com,還得在google的服務器上裝一個Selenium Core,那是多搞笑的一件事。 而Selenium IDE和Selenium Core HTA不會被同源策略所限制,因為他們對瀏覽器擴展了。 Selenium RC提供一個代碼服務器來保證Selenium JS文件看似來自相同的遠程服務器,從而符合同源策略;代理服務器欺騙瀏覽器,讓它認為這裡的確有像
這樣的目錄。 **3.支持HTTPS/SSL:** 這裡不說了,都支持。Selenium RC在「是」後面加\*因為它是在最近版本支持的,僅此而已。 **4.需要Java:**準確的說是需要JRE 這項只有Selenium RC需要,上面2中所說的「代理服務器」是一個Java程序,需在跑測試案例前啟動。 **5.將測試結果保存到磁盤** 只有Selenium Core不能將任何測試結果寫到磁盤上(因為它是用javascript寫的,它不允許向磁盤寫數據),其解決方案是當然你可以將測試結果發送到另外一台服務器保存。這也是Selenium Core的一大限制。 **6.多語言支持** (1).Selenium IDE僅支持Selenium語言。 (2).Selenium RC支持很多語言,如:C#,Java,Python,Ruby等。 (3).Selenium Core也是僅支持Selenium語言。 Selenium語言的測試案例如下: [![](http://pic002.cnblogs.com/img/hyddd/200905/2009052109111337.jpg)](http://images.cnblogs.com/cnblogs_com/hyddd/WindowsLiveWriter/Selenium1Selenium_13256/seleniumLanguage_2.jpg) 它的優點是:簡單,用(Command,Target,Value)三種元素組成一個行為,並且有輔助錄製腳本工具(如:Firefox IDE,Selenium Core等),不懂程序的測試人員都可以輕鬆地編寫測試案例。 它的缺點是:Selenese有一些嚴格的限制:它沒有條件(沒有"if"表達式),並且它沒有循環(沒有"For"表達式)。這會使編寫複雜的測試變得困難甚至不可能。 OK,現在我們來研究下到底該使用哪款工具開展測試! (1).Selenium IDE支持並且只支持Firefox瀏覽器,支持的瀏覽器太少,而依附於Firefox也不便於日後開展自動化測試,但是,它的錄製快捷好用!並且有代碼 轉換功能,可以把Selenium語言測試案例轉為C#,Java等語言的測試案例,我建議使用Selenium IDE + FireBug進行測試案例的編寫,然後轉為其他語言的測試案例後,再調用Selenium RC運行測試案例。 (2).Selenium Core,它的優點是編寫測試案例簡單,並且支持絕大多數的瀏覽器,但缺點也同樣明顯,Selenium Core需要遠程安裝,Selenese語言也限制了複雜案例的可能性,並且沒有良好的外部擴展,這是些都會是致命的問題。因為一個款測試工具不可能 100%滿足你測試需求的,當它不能滿足你測試需求時候,它必須有一個擴展機制可以讓你可以使用其他的方式滿足你需求,否則這款測試軟件即使功能強大,也 請三思慎用,否則當投入大量資源後才發現某些問題不能解決,那時候已經晚了,這是我的切身體會。 (3).Selenium RC是我推薦使用的工具,它支持很多瀏覽器,可以使用C#,Java等語言編寫測試案例,易於維護,同時提供了很好的擴展性,所以後續的文檔我會以Selenium RC作為默認的測試工具。
:::
搜尋
search
進階搜尋
QR Code 區塊
快速登入
所有討論區
「PHP全端開發」線上課程討論區
XOOPS使用討論區
一般研習學員
社大學員專用
路過哈啦區
XOOPS佈景設計
XOOPS模組開發
Tad書籍區
即時留言簿
書籍目錄
展開
|
闔起
線上使用者
585
人線上 (
202
人在瀏覽
線上書籍
)
會員: 0
訪客: 585
更多…
:::
主選單
NTPC OpenID
活動報名
模組控制台
進階區塊管理
站長工具箱(急救版)
網站地圖
Tad Tools 工具包
站長工具箱
行事曆
討論留言
嵌入區塊模組
快速登入
網站計數器
好站連結
最新消息
檔案下載
線上書籍
電子相簿
影音播放
常見問題
萬用表單
友站消息
社大學員
新聞
下載
教材
影音
討論
其他選單
好站連結
行事曆
電子相簿
常見問題
萬用表單
即時留言簿
友站消息
社大學員
登入
登入
帳號
密碼
登入