Firefox で Selenium WebDriver を利用しようとすると、ユーザーは Firefox との間の接続障害を示すエラーに遭遇しました。ブラウザとWebDriver。影響を受けたユーザーは次の仕様を報告しています:
Selenium WebDriver 2.53.0 はFirefox 47.0 とは互換性がありません。これは、Firefox ブラウザの管理に使用される FirefoxDriver コンポーネントが廃止されるためです。したがって、Firefox 47.0 を Selenium WebDriver 2.53.0 とともに使用するには、Firefox ドライバー (geckodriver) をダウンロードし、その絶対パスを Java システム プロパティにエクスポートする必要があります。
代替ソリューション:
あるいは、WebDriverManager などのライブラリを使用してダウンロード プロセスを自動化することもできます。そしてシステムプロパティをエクスポートします。これを行うには、プロジェクトに次の依存関係を含めます:
<dependency> <groupId>io.github.bonigarcia</groupId> <artifactId>webdrivermanager</artifactId> <version>5.1.0</version> </dependency>
プログラムで WebDriver を使用する前に次の行を追加します:
WebDriverManager.firefoxdriver().setup();
サンプル テスト ケース:
WebDriver を使用したサンプル JUnit 4 テスト ケースは次のようになります。
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 } }
Marionette は将来のバージョンの主要なオプションになりますが、現時点では安定性が欠けていることに注意することが重要です。詳細については、Marionette のロードマップを参照してください。
更新:
Selenium WebDriver 2.53.1 は 2016 年 6 月 30 日にリリースされ、この互換性の問題が解決されました。 FirefoxDriver は、サポートされているブラウザとして Firefox 47.0.1 で動作するようになりました。
以上がSelenium 2.53 と Firefox 47 の間の互換性の問題を解決するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。