Я автоматизирую веб-приложение для запуска в Headless Chrome.Версия ChromeDriver: - ChromeDriver 74.0.3729.6 Экран входа в приложение имеет всплывающие окна для ввода имени пользователя и пароля.Я использовал оповещения для обработки всплывающего окна в обычном Chrome
WebDriverWait wait = new WebDriverWait(driver, 18);
wait.until(ExpectedConditions.alertIsPresent());
Alert alert = driver.switchTo().alert();
alert.sendKeys("username" + Keys.TAB + "password");
alert.accept();
Когда Chrome установлен в режим без головы, всплывающее окно не отображается.Я мог видеть только пустой экран на скриншотах.
Кроме того, я попытался добавить chromeoptions как
String path = "path to chromedriver";
System.setProperty("webdriver.chrome.driver", path);
System.setProperty("webdriver.chrome.logfile", "./chromedriver.log");
System.setProperty("webdriver.chrome.verboseLogging", "true");
ChromeOptions options = new ChromeOptions();
options.addArguments("--headless");
options.addArguments("--disable-gpu");
options.addArguments("--disable-popup-blocking");
driver = new ChromeDriver(options);
ChromeDriverLog имеет значения по умолчанию
"default_content_settings": {
"geolocation": 1,
"mouselock": 1,
"notifications": 1,
"popups": 1,
"ppapi-broker": 1
}