J'essaie d'exécuter mon premier test Selenium et je n'ai pas réussi à appeler le navigateur en raison d'un problème de port. Ma chrome est la version 78.0.3904.97 (version officielle) (64 bits) et j'ai téléchargé la dernière version stable: ChromeDriver 78.0.3904.70. Je vois l'erreur ci-dessous lorsque j'exécute mon script .
Démarrage de ChromeDriver 78.0.3904.70 (edb9c9f3de0247fd912a77b7f6cae7447f6d3ad5-refs/branch-heads/3904 @ {# 800}) sur le port 30211 Seules les connexions locales sont autorisées. Veuillez protéger les ports utilisés par ChromeDriver et les cadres de test associés pour empêcher l'accès par du code malveillant. [1573154573.453] [AVERTISSEMENT]: Délai de connexion à Chrome expiré, nouvelle tentative ... 7 novembre 2019 7:22:56 PM org.openqa.Selenium.remote.ProtocolHandshake createSession INFO: dialecte détecté : Exception W3C dans le thread "principal" org.openqa.Selenium.InvalidArgumentException: argument non valide
(Info de session: chrome = 78.0.3904.97) Info de build: version: '3.141.59', révision: 'e82be7d358', heure: '2018-11-14T08: 25: 48'
J'ai téléchargé la dernière exe chromedriver qui est compatible avec ma version de chromebrowser.
import org.openqa.Selenium.WebDriver;
import org.openqa.Selenium.chrome.ChromeDriver;
public class demo1 {
public static void main(String[] args) {
//invoke browser
System.setProperty("webdriver.chrome.driver",
"C:\\Users\\270816\\Documents\\Selenium-
installations\\chromedriver_win32\\chromedriver.exe");
//create browser object
WebDriver driver= new ChromeDriver();
//hit google.com
driver.get("www.bbc.co.uk");
Message d'erreur:
Démarrage de ChromeDriver 78.0.3904.70 (edb9c9f3de0247fd912a77b7f6cae7447f6d3ad5-refs/branch-heads/3904 @ {# 800}) sur le port 30211 Seules les connexions locales sont autorisées. Veuillez protéger les ports utilisés par ChromeDriver et les cadres de test associés pour empêcher l'accès par du code malveillant.
Ce message d'erreur ...
[1573154573.453][WARNING]: Timed out connecting to Chrome, retrying...
Nov 07, 2019 7:22:56 PM org.openqa.Selenium.remote.ProtocolHandshake createSession
INFO: Detected dialect: W3C Exception in thread "main" org.openqa.Selenium.InvalidArgumentException: invalid argument
(Session info: chrome=78.0.3904.97) Build info: version: '3.141.59', revision: 'e82be7d358', time: '2018-11-14T08:25:48'
... implique que le ChromeDriver n'a pas pu lancer/générer un nouveau WebBrowser ie session du navigateur Chrome .
Selon la trace de la pile d'erreurs, la raison réelle de l'erreur n'est pas concluante. Cependant, lorsque vous utilisez:
Je soupçonne que le problème vient de la version [~ # ~] jdk [~ # ~] sur le système de test
Veiller à ce que:
@Test
En tant qu'utilisateur non root .driver.quit()
dans la méthode tearDown(){}
pour fermer et détruire le WebDriver et Web Client instances gracieusement.