web-dev-qa-db-fra.com

ChromeWebDriver - erreur inconnue: Echec du démarrage de Chrome: crash

J'essaie de tester mon application sur Chrome avec ChromeWebDriver, mais chaque fois que j'essaye, j'obtiens l'exception suivante:

   org.openqa.Selenium.WebDriverException: unknown error: Chrome failed to start: crashed
  (Driver info: chromedriver=2.10.267521,platform=Windows NT 6.1 SP1 x86_64) (WARNING: The server did not provide any stacktrace information)
Command duration or timeout: 61.46 seconds
Build info: version: '2.41.0', revision: '3192d8a6c4449dc285928ba024779344f5423c58', time: '2014-03-27 11:29:39'
System info: Host: 'PADAMSKI-W', ip: '10.10.8.60', os.name: 'Windows 7', os.Arch: 'AMD64', os.version: '6.1', Java.version: '1.6.0_37'
Driver info: pl.axit.test.Selenium.env.KoralinaChromeDriver
    at Sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at Sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.Java:39)
    at Sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.Java:27)
    at Java.lang.reflect.Constructor.newInstance(Constructor.Java:513)
    at org.openqa.Selenium.remote.ErrorHandler.createThrowable(ErrorHandler.Java:193)
    at org.openqa.Selenium.remote.ErrorHandler.throwIfResponseFailed(ErrorHandler.Java:145)
    at org.openqa.Selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.Java:595)
    at org.openqa.Selenium.remote.RemoteWebDriver.startSession(RemoteWebDriver.Java:240)
    at org.openqa.Selenium.chrome.ChromeDriver.startSession(ChromeDriver.Java:181)
    at org.openqa.Selenium.remote.RemoteWebDriver.<init>(RemoteWebDriver.Java:126)
    at org.openqa.Selenium.remote.RemoteWebDriver.<init>(RemoteWebDriver.Java:139)
    at org.openqa.Selenium.chrome.ChromeDriver.<init>(ChromeDriver.Java:160)
    at org.openqa.Selenium.chrome.ChromeDriver.<init>(ChromeDriver.Java:149)

Dans chromedriver.log je vois

[0.681][INFO]: Launching chrome: "C:\Users\padamski.AXIT.PL\AppData\Local\Google\Chrome\Application\chrome.exe" --disable-background-networking --disable-client-side-phishing-detection --disable-component-update --disable-default-apps --disable-hang-monitor --disable-Prompt-on-repost --disable-sync --disable-web-resources --enable-logging --ignore-certificate-errors --load-extension="C:\Users\PADAMS~1.PL\AppData\Local\Temp\scoped_dir4048_12236\internal" --logging-level=1 --metrics-recording-only --no-first-run --password-store=basic --remote-debugging-port=12573 --safebrowsing-disable-auto-update --safebrowsing-disable-download-protection --use-mock-keychain --user-data-dir="C:\Users\PADAMS~1.PL\AppData\Local\Temp\scoped_dir4048_22909" --window-size=6000,6000 data:,
[60.836][INFO]: RESPONSE InitSession unknown error: Chrome failed to start: crashed

J'utilise:

  • Chrome 36 
  • ChromeWebDriver 2.10
  • Windows 7

Dans Process Explorer, je peux voir que le processus chromedriver.exe est en cours d'exécution, mais aucune fenêtre ne s'ouvre et après quelques secondes, je reçois une exception ci-dessus.

Mon code de départ est:

 File f = ResourceProvider.getResource("tools/win/chromedriver.exe");
 System.setProperty("webdriver.chrome.driver", f.getAbsolutePath());
 return new ChromeDriver();
15
Paweł Adamski

Finalement, j'ai découvert que WebDriver essayait d'exécuter Chrome à partir de C:\Users\______\AppData\Local\Google\Chrome\Application\chrome.exe, ce qui ne fonctionnait pas, même en essayant manuellement. C'était très étrange, car lorsque je lance Chrome, j'en utilise un installé dans le répertoire Program Files et cela fonctionne sans problème.

J'ai donc désinstallé Chrome, tout supprimé de c:\Users______\AppData\Local\Google\Chrome\ et réinstallé Chrome. Après cela, ça a commencé à fonctionner. 

6
Paweł Adamski

J'ai eu le même problème que ci-dessus. et je l'ai résolu . Je lance le sélénium avec du chrome dans Alpine . Mon environnement:

  • Alpine (Linux 3.13.0-24-générique x86_64)
  • Chrome 53.0.2785.92
  • chromedriver = 2.22
  • Sélénium (3.0.1)

et j'ai rencontré l'information d'erreur est :

File "/usr/lib/python2.7/site-packages/Selenium/webdriver/remote/errorhandler.py", line 192, in check_response
raise exception_class(message, screen, stacktrace)
Selenium.common.exceptions.WebDriverException: Message: unknown error:    Chrome failed to start: crashed
(Driver info: chromedriver=2.22 (5e2d5494d735a71aa5c2e7ef9bf5ce96945e92e9),platform=Linux 3.13.0-24-generic x86_64)

Ma solution est exécutée:

apk add libexif udev

et puis ça marche. 

Je me réfère ici: https://hub.docker.com/r/rodrigomiguele/chromium/~/dockerfile/

4
Leafney
  DesiredCapabilities capability = DesiredCapabilities.chrome();

        System.setProperty("webdriver.chrome.driver", "path to chromedriver.exe");
        capability.setBrowserName("chrome");
        capability.setPlatform(PlatformAndEnvironmentSetUp.platformSetUp);

        driver = new RemoteWebDriver(new URL("http://" + PlatformAndEnvironmentSetUp.hubIP + ":" + PlatformAndEnvironmentSetUp.hubPort + "/wd/hub"), capability);


        this.driver.manage().timeouts().implicitlyWait(20, TimeUnit.SECONDS);
        this.driver.manage().timeouts().pageLoadTimeout(30, TimeUnit.SECONDS);
        this.driver.manage().window().setSize(new Dimension(1920, 1080));
//page instances init()

        loginPage = PageFactory.initElements(this.driver, LoginPage.class);
        homePage = PageFactory.initElements(this.driver, AdminHomePage.class);

Cet exemple de code fonctionne bien pour moi . Juste une petite note: "chromedriver.exe" Je place dans le même dossier de projet. Cela facilite la question du chemin d’exécutable de chromdriver.

Donc, cette ligne de code ressemble à ceci:

System.setProperty("webdriver.chrome.driver", "chromedriver.exe");

Ressource à télécharger chromedriver.exe

J'espère que cela vous aide.

2
eugene.polschikov

Désinstallez, supprimez le profil chrome de c:\Utilisateurs _______ L\AppData\Local\Google\Chrome\et réinstallez chrome pour résoudre le problème, cela a fonctionné pour moi

2
yesh

J'ai résolu ce problème sous Windows 10 en définissant chromedriver.exe, [yourPythonIDE] .exe et chrome.exe pour qu'ils s'exécutent avec les droits d'administrateur, auxquels il est possible d'accéder en cliquant avec le bouton droit de la souris sur le fichier exe et en allant dans Propriétés >> Compatibilité.

1
gcfchn

J'ai eu le même problème que ci-dessus. En fin de compte, j'ai réussi à installer deux chrome.exe. Un sous Program Files et sous user\appdata\local ...... Je désinstalle celui sous Program Files et cela fonctionne maintenant comme un charme.

0
Kral

J'ai pu résoudre ce problème sous Windows 10 en utilisant l'administrateur CMD pour exécuter mes scripts. 

0
Cason