J'ai cette exception depuis que je suis passé à la version 3.0 bêta avec Firefox.
Exception dans le thread "principal" Java.lang.IllegalStateException: le chemin de l'exécutable du pilote doit être défini par la propriété système webdriver.gecko.driver
Il semble maintenant que nous devons télécharger et définir manuellement le chemin d'accès à l'exécutable du pilote pour Mozilla Firefox, tout comme pour chromedriver.
Voici ce que vous devez faire: -
Maintenant, vous devez définir la propriété système et écrire les lignes suivantes pour initialiser l'objet FireFoxDriver: -
System.setProperty ("webdriver.gecko.driver", "C:\GeckoDriver\geckodriver.exe");
Pilote WebDriver = new FirefoxDriver ();
driver.get (" http://seleniumhq.com ");
C'est tout!
Essayez le code ci-dessous en Java, .__ et son fonctionnement me convient
nécessité de mettre à jour les pilotes Selenium et Selenium pour Java
firefox mis à jour, pilote firefox
import org.openqa.Selenium.WebDriver;
import org.openqa.Selenium.firefox.FirefoxDriver;
public class FirstTestCase {
public static void main(String[] args) {
// TODO Auto-generated method stub
//WebDriver driver =new FirefoxDriver();
System.setProperty("webdriver.gecko.driver", "C:\\Drivers\\geckodriver.exe");
FirefoxDriver driver = new FirefoxDriver();
driver.get("https://www.syncfusion.com/");
System.out.println("Successfully opened the website www.Syncfusion.com");
try {
Thread.sleep(4000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
driver.quit();
}
}
System.setProperty("webdriver.gecko.driver","C://Program Files (x86)//geckodriver-v0.11.1-win64//geckodriver.exe");
String testurl = "http://www.seleniumhq.com";
WebDriver driver = new FirefoxDriver();
driver.get(testurl);
Normalement, cela se produit lorsque la version FF est supérieure à 45 et qu’on télécharge le pilote gecko ( https://github.com/mozilla/geckodriver/releases ). Après cela, décompressez le contenu du dossier et faites glisser le fichier exe du pilote gecko dans ce dossier (src/main/resources) si vous avez créé un projet maven.
Nous utilisons System.setProperty pour fournir le chemin de chromedriver/iedriver, etc. Voici la déclaration de la méthode Java.lang.System.setProperty ():
public static String setProperty (clé de chaîne, valeur de chaîne)
clé : Nom de la propriété système
valeur : valeur de la propriété système
par exemple . System.setProperty ("webdriver.chrome.driver", "src/test/resources/chromedriver.exe");
webdriver.chrome.driver: Pilote Chrome (nom de la propriété système) src/test/resources/chromedriver.exe: chemin de chromedriver (valeur de la propriété système)
Généralement, nous rencontrons IllegalArgumentException lorsque la clé est vide.
classe publique WaitTestCase { Pilote WebDriver;
@Test ()
public void TC_Wait(){
System.setProperty("webdriver.gecko.driver","C:\\geckodriver.exe");
driver = new FirefoxDriver();
driver.get("http:\\yahoo.com");
driver.quit();
}
}