Selenium 2.53 と Firefox 47 の互換性
Firefox で WebDriver を使用しようとすると、エラーが発生する可能性があります:
org.openqa.selenium.firefox.NotConnectedException: Unable to connect to host 127.0.0.1 on port 7055 after 45000 ms.
環境詳細:
そして解決策
残念ながら、Selenium WebDriver 2.53.0 は Firefox 47.0 と互換性がありません。 Firefox ブラウザを処理していた古い WebDriver コンポーネント (FirefoxDriver) は段階的に廃止されます。バージョン 3.0 以降、Selenium WebDriver では、Firefox ブラウザを制御するために geckodriver バイナリが必要です。
この問題を解決するには、Firefox ドライバ (geckodriver) をダウンロードし、Java のシステムを使用して webdriver.gecko.driver 変数を絶対パスに設定します。プロパティ:
System.setProperty("webdriver.gecko.driver", "/path/to/geckodriver");
または、このプロセスを自動化する WebDriverManager ライブラリ。オペレーティング システムに基づいて適切な Marionette バイナリをダウンロードし、それをシステム プロパティに割り当てます。プロジェクトに次の依存関係を含めます:
<dependency> <groupId>io.github.bonigarcia</groupId> <artifactId>webdrivermanager</artifactId> <version>5.1.0</version> </dependency>
次に、WebDriver を使用する前に次の行を実行します:
WebDriverManager.firefoxdriver().setup();
補足事項
Marionette は、WebDriver 3 および Firefox 48 に代わる、Firefox ブラウザ自動化の未来です。ただし、現時点 (バージョン 0.9.0) の安定性には疑問があります。詳細については、Marionette のロードマップを参照してください。
最近の更新
2016 年 6 月 30 日に、Selenium WebDriver 2.53.1 がリリースされ、FirefoxDriver の Firefox 47.0.1 との互換性が回復されました。 .
以上がSelenium 2.53.0 が Firefox 47.0 と互換性がないのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。