在嘗試將Selenium WebDriver 與Firefox 結合使用時,用戶遇到了一個錯誤,表明與Firefox 之間的連線失敗瀏覽器和網路驅動程式。受影響的使用者報告了以下規格:
Windows 10 64 位元
值得注意的是,Selenium WebDriver 2.53.0 與Firefox 47.0 不相容。這是因為用於管理 Firefox 瀏覽器的 FirefoxDriver 元件已停止使用。因此,要將 Firefox 47.0 與 Selenium WebDriver 2.53.0 一起使用,必須下載 Firefox 驅動程式 (geckodriver) 並將其絕對路徑匯出到 Java 系統屬性。
替代解決方案:
<dependency> <groupId>io.github.bonigarcia</groupId> <artifactId>webdrivermanager</artifactId> <version>5.1.0</version> </dependency>
或者,您可以使用 WebDriverManager 之類的函式庫來自動執行下載程序並匯出系統屬性。為此,請在您的專案中包含以下相依性:
WebDriverManager.firefoxdriver().setup();
在程式中使用WebDriver 之前加入此行:
範例測試案例:
public class FirefoxTest { protected WebDriver driver; @BeforeClass public static void setupClass() { WebDriverManager.firefoxdriver().setup(); } @Before public void setupTest() { driver = new FirefoxDriver(); } @After public void teardown() { if (driver != null) { driver.quit(); } } @Test public void test() { // Your test code here } }
使用WebDriver 的JUnit 4 測試案例範例可能如下所示:
雖然Marionette 將是未來版本的主要選項,但重要的是要意識到它目前缺乏穩定。請參閱 Marionette 路線圖以了解更多資訊。
更新:
Selenium WebDriver 2.53.1 於 2016 年 6 月 30 日發布,解決了此相容性問題。 FirefoxDriver 現在支援 Firefox 47.0.1 瀏覽器。以上是如何解決 Selenium 2.53 和 Firefox 47 之間的相容性問題?的詳細內容。更多資訊請關注PHP中文網其他相關文章!