Lorsque j'ai modifié mon code pour qu'il s'exécute avec RemoteWebDriver et ChromeDriver, j'obtiens: Exception: le chemin d'accès à l'exécutable du pilote doit être défini par la propriété système webdriver.chrome.driver;

Code:

File file = new File("C:/WebDrivers/chromedriver.exe");
System.setProperty("webdriver.chrome.driver",file.getAbsolutePath());
HashMap<String, Object> chromePrefs = new HashMap<String, Object>();
chromePrefs.put("profile.default_content_settings.popups", 0);
chromePrefs.put("download.default_directory", Path_FileDownload);
ChromeOptions options = new ChromeOptions();
options.setExperimentalOption("prefs", chromePrefs);
DesiredCapabilities cap = DesiredCapabilities.chrome();
cap.setCapability(CapabilityType.ACCEPT_SSL_CERTS, true);
cap.setCapability(ChromeOptions.CAPABILITY, options);
driver = new RemoteWebDriver(new URL("http://192.168.224.160:4444/wd/hub"), cap);
//driver = new ChromeDriver(cap);
driver.manage().window().maximize();
driver.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS);

Le fichier existe sur le PC sur lequel je l'exécute. Lorsque je passe à ChromeDriver au lieu de Remote WebDriver, cela fonctionne très bien.

1
Cody Kutac 9 août 2017 à 21:57

2 réponses

Vous avez deux barres obliques au début de votre chemin:
"C://WebDrivers" + "/chromedriver.exe"
devrait être
"C:/WebDrivers" + "/chromedriver.exe"

Les chemins d'accès aux fichiers Java utilisent «/» pour séparer les répertoires et les fichiers, comme pour les systèmes UNIX.

0
Camp bell 9 août 2017 à 19:19
    ChromeOptions options = new ChromeOptions();
    options.setBinary("Chrome_Binary/chrome.exe");
    options.addArguments("--start-fullscreen");
    System.setProperty("webdriver.chrome.driver", "Drivers/Chrome/chromedriver.exe");
    DesiredCapabilities cap = DesiredCapabilities.chrome();
    cap.setCapability(ChromeOptions.CAPABILITY, options);
0
Varun Gattu 9 août 2017 à 20:18