Compatibilité Selenium 2.53 avec Firefox 47
Lorsque vous essayez d'utiliser WebDriver avec Firefox, une rencontre avec une erreur est possible :
org.openqa.selenium.firefox.NotConnectedException: Unable to connect to host 127.0.0.1 on port 7055 after 45000 ms.
Détails de l'environnement :
Cause et solution
Malheureusement, Selenium WebDriver 2.53.0 est incompatible avec Firefox 47.0. L'ancien composant WebDriver qui gérait les navigateurs Firefox (FirefoxDriver) est en train d'être progressivement supprimé. À partir de la version 3.0, Selenium WebDriver nécessite le binaire geckodriver pour contrôler les navigateurs Firefox.
Pour résoudre ce problème, téléchargez le pilote Firefox (geckodriver) et définissez la variable webdriver.gecko.driver sur son chemin absolu à l'aide du système Java. propriétés :
System.setProperty("webdriver.gecko.driver", "/path/to/geckodriver");
Vous pouvez également exploiter la bibliothèque WebDriverManager pour automatiser ce processus, qui télécharge le binaire Marionette approprié en fonction de votre système d'exploitation et l'attribue à la propriété système. Incluez la dépendance suivante dans votre projet :
<dependency> <groupId>io.github.bonigarcia</groupId> <artifactId>webdrivermanager</artifactId> <version>5.1.0</version> </dependency>
Ensuite, exécutez la ligne suivante avant d'utiliser WebDriver :
WebDriverManager.firefoxdriver().setup();
Notes supplémentaires
Marionette est l'avenir de l'automatisation du navigateur Firefox, remplaçant WebDriver 3 et Firefox 48 . Cependant, sa stabilité pour le moment (version 0.9.0) est discutable. Reportez-vous à la feuille de route de Marionette pour plus de détails.
Mise à jour récente
Le 30 juin 2016, Selenium WebDriver 2.53.1 a été publié, rétablissant la compatibilité de FirefoxDriver avec Firefox 47.0.1. .
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!