2012-03-26 137 views
5

使用Selenium網絡驅動程序而不是Selenium RC啓動新的測試框架是個好主意嗎? 使用Selenium Web驅動程序並不是所有的Selenium方法都實現了。那麼使用Selenium RC是個好主意嗎?使用Selenium網絡驅動程序或硒RC

謝謝!

回答

3

WebDriver。僅僅因爲WebDriver是積極開發和維護的,更穩定和功能性更好的API。

RC不再開發和maintaned和webdriver的是硒的未來。

+0

thx這有助於我決定! – SUM 2012-03-26 17:13:31

+0

我想用Selenium捕捉網絡流量。 我能夠使用RC的.start(「captureNetworkTraffic = true」)ans .stop()來做到這一點。 我沒有看到任何其他使用webdriver的方式。 所以我應該使用WebDriver? – 2014-06-26 15:33:38

1

這取決於你需要做什麼。 但是,我發現硒RC是一個更好的選擇,因爲我可以編寫一個測試程序連接到螞蟻,以持續集成/構建系統定期運行單元測試。

我必須寫一些包裝方法來模擬的東西,曾經是RC一個襯墊。最大的問題是,將測試從Selenium IDE轉換爲Web Driver經常會跳過很多命令,因爲它們沒有實現。

管理窗口彈出是最煩人的部分。你必須找到新的窗口句柄,切換到它,做你的工作,調用close(),然後切換回第一個窗口。最後一部分很關鍵,或者由於瀏覽器關閉而導致套件的其他部分失敗。

螞蟻現在直接序幕一個瀏覽器(經由junit的@BeforeClass),而不是使用所述硒詹金斯插件硒網格上運行它。

+1

的力量,你爲什麼認爲我們不能做基於webdriver的測試一樣嗎?我讓他們與哈德森跑步 – 2012-03-26 17:01:42

2

Selenium-WebDriver使用每個瀏覽器對自動化的原生支持直接調用瀏覽器。如何進行這些直接調用,它們支持的功能取決於您使用的瀏覽器。每個'瀏覽器驅動程序'的信息。

對於那些熟悉Selenium-RC的人來說,這與你習慣的很不一樣。 Selenium-RC對每個支持的瀏覽器都採用相同的方式。當瀏覽器加載後,它將JavaScript功能「注入」到瀏覽器中,然後使用其javascript在瀏覽器中驅動AUT。 WebDriver不使用這種技術。同樣,它使用內置的瀏覽器支持自動化,直接驅動瀏覽器。

所以最好使用webdriver。

1

我會推薦Web Driver。與Selenium RC Web驅動程序測試執行相比,執行速度要快得多。在Selenium RC中,您需要單獨啓動獨立服務器,但是在網絡驅動程序中,因爲它具有本地調用,因此您無需爲此自行解決問題。

當涉及到處理瀏覽器彈出的,警報,父子窗口捲筒紙驅動器是最好的解決方案。在任何瀏覽器中捕獲屏幕截圖都不是Web驅動程序的問題。拖動&拖放也網絡驅動程序支持移動測試自動化。如果你需要執行你的測試靜音模式(沒有瀏覽器打開),只有網絡驅動程序能夠處理它。

沒有與網絡驅動器,NUnit的& log4net的內置陰涼基準測試自動化框架。它被稱爲「SeShell」 http://seshell.org你可以下載安裝,並可以有一些經驗的網絡驅動器