Chrome ne démarre pas ou plante immédiatement

Cela se produit souvent lorsque vous exécutez ChromeDriver ou Chrome à l'aide d'un harnais de test spécial (peut-être un IDE) ou d'un système de compilation continue (tel que Jenkins).

Essayez de lancer le même binaire Chrome que votre test à partir d'une invite de commande utilisateur standard. Vérifiez le binaire Chrome utilisé dans le fichier chromedriver.log. Si vous transmettez des options ou des arguments de ligne de commande spéciaux à Chrome, veillez également à les inclure. Si Chrome ne démarre pas correctement, vous devez corriger son installation. Essayez de le réinstaller.

En supposant que vous puissiez exécuter Chrome à partir d'une invite de commande, votre prochaine étape consiste à voir si le même problème se produit lorsque vous exécutez votre test dans un environnement de test. De préférence, lancez le binaire ou le script de test directement à partir de l'invite de commande d'un utilisateur normal. Vérifiez que vous pouvez lancer Chrome directement à partir de votre test, sans utiliser WebDriver ni ChromeDriver. Par exemple, en Java, vous pouvez utiliser l'API ProcessBuilder pour démarrer directement le binaire Chrome. Si votre test présente le même problème, même dans un environnement de test, envoyez un nouveau problème en indiquant comment le reproduire.

Sinon, si le problème ne se produit que dans votre environnement de test spécial:

Utilisez le programme d'installation alternatif de Chrome. Chrome est alors installé pour tous les utilisateurs. Cela permet souvent de résoudre les problèmes si vous exécutez Selenium en tant que service en arrière-plan.

L'exécution de Chrome en tant qu'utilisateur root (administrateur) sous Linux est une cause courante de plantage au démarrage. Bien qu'il soit possible de contourner ce problème en transmettant l'indicateur --no-sandbox lors de la création de votre session WebDriver, une telle configuration n'est pas prise en charge et est fortement déconseillée. Configurez plutôt votre environnement pour qu'il exécute Chrome en tant qu'utilisateur standard.

Si aucune de ces solutions ne résout le problème, créez une nouvelle demande en indiquant comment reproduire le problème. Si votre problème ne se produit que dans un environnement de test spécial et inhabituel, sachez que les développeurs de ChromeDriver peuvent choisir de ne pas l'examiner ni de le résoudre.