好吧,會試圖解釋細節上的差異。
說到並行測試,最好使用硒網格。 硒RC和硒網格的基本概念。 你可以得到更多的細節here
約硒的webdriver有些話:
硒2.0的主要新特性是webdriver的API的整合。 WebDriver旨在提供更簡單,更簡潔的編程界面,同時解決Selenium-RC API中的一些限制。開發Selenium-WebDriver是爲了更好地支持動態網頁,頁面的元素可能會改變,頁面本身不會被重新加載。 WebDriver的目標是提供一個設計良好的面向對象API,爲現代先進的Web應用程序測試問題提供改進的支持。
與Selenium-RC相比,WebDriver如何「驅動」瀏覽器?
Selenium-WebDriver使用每個瀏覽器對自動化的本機支持直接調用瀏覽器。如何進行這些直接調用,它們支持的功能取決於您使用的瀏覽器。有關每個「瀏覽器驅動程序」的信息將在本章後面提供。 對於那些熟悉Selenium-RC的人來說,這與你習慣的很不一樣。 Selenium-RC對每個支持的瀏覽器都採用相同的方式工作。當瀏覽器加載後,它將JavaScript功能「注入」到瀏覽器中,然後使用其javascript在瀏覽器中驅動AUT。 WebDriver不使用這種技術。同樣,它使用內置的瀏覽器支持自動化,直接驅動瀏覽器。
的webdriver和硒服務器
你可以或不可以,需要Selenium服務器,這取決於你打算如何使用硒的webdriver。如果您只使用WebDriver API,則不需要Selenium-Server。如果你的瀏覽器和測試都在同一臺機器上運行,並且你的測試只使用WebDriver API,那麼你不需要運行Selenium-Server; WebDriver將直接運行瀏覽器。 儘管Selenium-Server和Selenium-WebDriver一起使用有一些原因。
- 您正在使用硒網格通過多個分發你的測試 機或虛擬機(VM)。
- 您想要連接到具有特定瀏覽器 版本但不在當前計算機上的遠程機器。
- 您沒有使用Java綁定(即Python和C#或Ruby)和 想可以使用HtmlUnit驅動
硒的webdriver的驅動程序 webdriver的是對關鍵接口的名稱應該編寫哪些測試,但有幾種實現。這些措施包括:
驅動的HtmlUnit 這是目前最快,最輕量級實現的webdriver的。顧名思義,這是基於HtmlUnit。 HtmlUnit是沒有GUI的WebBrowser的基於Java的實現。對於任何語言綁定(除java以外),Selenium Server都需要使用此驅動程序。
優點
- 最快落實的webdriver
- 一個純Java的解決方案,所以它是平臺無關的。
- 支持JavaScript
缺點
- C仿真其他瀏覽器的JavaScript的行爲(見下文)
的JavaScript在主流瀏覽器化的HtmlUnit驅動 無使用JavaScript引擎由HtmlUnit(Rhino)使用。如果使用HtmlUnit測試JavaScript,結果可能會與這些瀏覽器顯着不同。 當我們說「JavaScript」時,我們實際上是指「JavaScript和DOM」。雖然DOM是由W3C定義的,但每個瀏覽器都有自己的怪癖和它們在實現DOM方面的差異,以及JavaScript如何與它進行交互。 HtmlUnit擁有令人印象深刻的DOM完整實現,並且對使用JavaScript有很好的支持,但它與其他任何瀏覽器沒有什麼不同:它與W3C標準和主要瀏覽器的DOM實現都有其自身的差異和差異,儘管它模仿其他瀏覽器的能力。使用WebDriver,我們不得不做出選擇;我們是否啓用了HtmlUnit的JavaScript功能,並且冒着團隊陷入只存在於問題中的風險,還是因爲知道有越來越多的依賴JavaScript的網站而使JavaScript停用?我們採取了保守的方法,並且默認情況下在使用HtmlUnit時禁用了支持。每次發佈WebDriver和HtmlUnit,我們都會重新評估這個決定:我們希望在某個時候在HtmlUnit上默認啓用JavaScript。
探討更深入的webdriver的設置看this
從HtmlUnit documentation: 是的HtmlUnit沒有一個通用的單元測試框架。它專門用於模擬瀏覽器以進行測試,並且旨在用於其他測試框架(如JUnit或TestNG)中。
所以締結硒的HtmlUnit區別: 的HtmlUnit是一個基於java實現web瀏覽器的無GUI和模擬用於測試的瀏覽器的方式和硒的webdriver使直接調用瀏覽器使用每個瀏覽器對自動化的本地支持。我們可以看到HtmlUnit提供的API沒有GUI自動化的可能性,而WebDriver提供了內部瀏覽器自動化的可能性。
談到移動自動化, 硒也有一個iPhone司機 iPhone Driver wiki article 和Android驅動程序 Android Driver wiki article
參見this presentation
不幸的是我不能給你我的手機驅動程序的工作經驗評估,因爲我處理網絡自動化(無手機)。也知道Cucumber
(自動化工具)在移動自動裝置中很受歡迎。 參見this和this。
希望它現在來更清晰律位爲你=)
你有沒有想過使用PhantomJS或「無頭鍍鉻」,而不是? – djangofan