經過selenium百科可知:javascript
1.Selenium Core:支持DHTML的測試案例(效果相似數據驅動測試),它是Selenium IDE和Selenium RC的引擎。java
2.Selenium IDE:FireFox的一個插件,支持腳本錄製。web
3.Selenium RC:Selenium Remote Control。後續的系列文章我會主要針對Selenium RC展開介紹。編程
4.Selenium Grid:容許同時並行地、在不一樣的環境上運行多個測試任務,極大地加快Web應用的功能測試。瀏覽器
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文件看似來自相同的遠程服務器,從而符合同源策略;代理服務器欺騙瀏覽器,讓它認爲這裏的確有像http://www.google.com/selenium/這樣的目錄。
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語言。
(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做爲默認的測試工具。