Ausgabe
Ich kann meinen ersten Selen-Code nicht ausführen. Ich habe mehrmals versucht, den Webdriver-Pfad zu ändern, aber das hat nicht funktioniert.
Code-Versuche:
package Learningday1;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
public class FirstScript {
public static void main(String[] args) {
System.setProperty("webdriver.chrome.driver", "C:\\Users\\amann\\Downloads\\chromedriver_win32\\chromedriver.exe");
WebDriver driver = new ChromeDriver();
driver.get("https://selenium.dev");
System.out.println(driver.getTitle());
driver.quit();
}
}
Fehler:
Exception in thread "main" java.lang.IllegalStateException: The driver executable must exist: C:\Users\amann\eclipse-workspace\Selenium learning 2.0\???C:\Users\amann\Downloads\chromedriver_win32\chromedriver.exe
at org.openqa.selenium.internal.Require$FileStateChecker.isFile(Require.java:342)
at org.openqa.selenium.remote.service.DriverService.checkExecutable(DriverService.java:147)
at org.openqa.selenium.remote.service.DriverService.findExecutable(DriverService.java:142)
at org.openqa.selenium.chrome.ChromeDriverService.access$000(ChromeDriverService.java:39)
at org.openqa.selenium.chrome.ChromeDriverService$Builder.findDefaultExecutable(ChromeDriverService.java:233)
at org.openqa.selenium.remote.service.DriverService$Builder.build(DriverService.java:437)
at org.openqa.selenium.chrome.ChromeDriverService.createDefaultService(ChromeDriverService.java:128)
at org.openqa.selenium.chrome.ChromeDriver.<init>(ChromeDriver.java:49)
at Learningday1.FirstScript.main(FirstScript.java:10)
Schnappschuss:
Lösung
Es gibt einige Unklarheiten zwischen Ihren Codeversuchen und dem Fehler-Stacktrace.
In Ihrem Code haben Sie den ChromeDriver wie folgt erwähnt:
C:\\Users\\amann\\Downloads\\chromedriver_win32\\chromedriver.exe
Wo der Fehler-Stacktrace erwähnt, dass die ausführbare Treiberdatei nicht vorhanden ist unter:
C:\Users\amann\eclipse-workspace\Selenium learning 2.0???C:\Users\amann\Downloads\chromedriver_win32\chromedriver.exe
Lösung
Stellen Sie sicher, dass Sie den ChromeDriver entpackt und mit dem Unterverzeichnis abgelegt haben:
C:\\Users\\amann\\Downloads\\chromedriver_win32
und Sie müssen den absoluten Pfad in der Zeile System.setProperty() wie folgt angeben:
System.setProperty("webdriver.chrome.driver", "C:\\Users\\amann\\Downloads\\chromedriver_win32\\chromedriver.exe");
Aktualisieren
Sie haben 2 Projekte mit fast ähnlichen Namen, ein Maven-Projekt und ein weiteres ein Java-Projekt. Der Name beginnt mit Selenium Learning .
Versuchen Sie, gleiche Namen für mehrere Projekte und Leerzeichen innerhalb der Projektnamen zu vermeiden. Beispiel SeleniumTest
, SeleniumProgram
usw.
PS: Sie können das aktuelle Projekt löschen und ein neues erstellen.
Verweise
Eine entsprechende ausführliche Diskussion finden Sie in:
Beantwortet von – unentdecktes Selen
Antwort geprüft von – Katrina (FixError Volunteer)