Chrome nie uruchamia się lub nie zawiesza się od razu

Zwykle dzieje się tak, gdy uruchamiasz ChromeDriver lub Chrome za pomocą specjalnego zestawu testowego (np. IDE) lub systemu ciągłej kompilacji (np. Jenkins).

Spróbuj uruchomić ten sam plik binarny Chrome, którego używa test, z poziomu zwykłego wiersza poleceń. Sprawdź, który plik binarny Chrome jest używany w pliku chromedriver.log. Jeśli przekazujesz do Chrome specjalne przełączniki lub argumenty wiersza poleceń, pamiętaj, aby uwzględnić je również. Jeśli Chrome nie uruchamia się prawidłowo, musisz naprawić jego instalację. Spróbuj ponownie zainstalować aplikację.

Zakładając, że możesz uruchomić Chrome z poziomu wiersza poleceń, sprawdź, czy ten sam problem występuje podczas uruchamiania testu w środowisku testowym. Zalecamy uruchomienie testowego binarnego pliku lub skryptu bezpośrednio z poziomu zwykłego wiersza poleceń. Sprawdź, czy możesz uruchomić Chrome bezpośrednio z testu, bez używania WebDrivera ani ChromeDrivera. Na przykład w Javie możesz użyć interfejsu ProcessBuilder API, aby uruchomić plik binarny Chrome bezpośrednio. Jeśli test wykazuje ten sam problem nawet w środowisku testowym, prześlij nowy problem z instrukcjami odtwarzania problemu.

Jeśli problem występuje tylko w specjalnym środowisku testowym:

Użyj alternatywnego instalatora Chrome. Wszyscy użytkownicy otrzymają Chrome. To często rozwiązuje problemy, jeśli Selenium działa jako usługa działająca w tle.

Typową przyczyną awarii Chrome podczas uruchamiania jest uruchamianie przeglądarki jako użytkownik root (administrator) w Linuksie. Chociaż można obejść ten problem, podając parametr --no-sandbox podczas tworzenia sesji WebDriver, taka konfiguracja nie jest obsługiwana i nie zalecamy jej stosowania. Skonfiguruj środowisko, aby uruchamiać Chrome jako zwykły użytkownik.

Jeśli żadna z tych metod nie rozwiąże problemu, prześlij nowe zgłoszenie z instrukcjami dotyczącymi odtworzenia problemu. Jeśli problem występuje tylko w specjalnym, nietypowym środowisku testowym, deweloperzy ChromeDriver mogą nie zbadać go i rozwiązać.