По умолчанию ChromeDriver регистрирует в stderr только предупреждения и ошибки. При отладке проблем полезно включить более подробное ведение журнала.
Чтобы включить подробное ведение журнала, передайте --verbose
на сервер ChromeDriver. Вы также можете передать --log-path
, чтобы журнал записывался в файл вместо stderr. Если вы не запускаете сервер ChromeDriver самостоятельно, вам необходимо передать переключатель с помощью клиентской библиотеки WebDriver. К сожалению, у некоторых клиентов пока нет такой возможности.
При передаче --log-path
команде запуска Chrome stderr в Chrome Linux и Mac сохраняется в файле журнала. Однако stderr в Windows не сохраняется, поскольку Chrome — это приложение с графическим интерфейсом, и операционная система не позволяет ему наследовать дескриптор stderr от ChromeDriver.
Чтобы сохранить stderr в Windows, Linux и Mac, используйте переменную среды CHROME_LOG_FILE
. Тогда файл содержит только журналы Chrome. Если вы укажете logPath
в ChromeOptions, ChromeDriver скопирует его значение в CHROME_LOG_FILE
.
Android не захватывает stderr или stdout. Стандартный вывод переходит в окно консоли на всех платформах.
Войти с помощью C
var service = ChromeDriverService.CreateDefaultService();
service.LogPath = "D:\\chromedriver.log";
service.EnableVerboseLogging = true;
driver = new ChromeDriver(service);
Существуют перегруженные версии обеих функций, см. документацию по API.
Войти с помощью Java
System.setProperty("webdriver.chrome.logfile", "D:\\chromedriver.log");
System.setProperty("webdriver.chrome.verboseLogging", "true");
Войти с помощью Python
driver = webdriver.Chrome(executable_path="D:\\chromedriver.exe", service_args=["--verbose", "--log-path=D:\\qc1.log"])
Войти со всеми языками
Запустите ChromeDriver в терминале с подробным журналированием, используя следующие флаги:
--verbose --log-path=chromedriver.log
Запустите тест, используя RemoteWebDriver, указанный по адресу http://localhost:9515
.