Я использую автоматизированный набор тестов, который будет выполняться на удаленном сервере.Я успешно разработал тесты, однако теперь мне нужно убедиться, что они запускаются в режиме без головы.
Я перемещаюсь по веб-странице с помощью различных селекторов, нажимая кнопки и т. Д., И в конце концов нажимаю кнопку загрузки.
Я активирую безголовый режим и использую команду setDownloadBehavior, которая регулярно отображается следующим образом:
chrome_options = Options()
chrome_options.add_experimental_option("prefs", {"download.default_directory": r"C:\Users\xxx\Downloads", "download.prompt_for_download": False,"download.directory_upgrade": True, "safebrowsing.enabled": True})
chrome_options.add_argument('--disable-gpu')
chrome_options.add_argument('--headless')
self.driver = webdriver.Chrome(executable_path=r'C:\Users\xxx\chromedriver.exe', options=chrome_options)
...
driver.command_executor._commands["send_command"] = ("POST", '/session/$sessionId/chromium/send_command')
params = {'cmd': 'Page.setDownloadBehavior', 'params': {'behavior': 'allow', 'downloadPath': r"C:\Users\xxx\Downloads"}}
driver.execute("send_command", params)
Это работает успешно, однако вместо загрузки требуемого файла онозагружает файл с правильным именем, но пустой (файл объемом 1 КБ без содержимого).Если я запускаю программу без использования команды chrome_options.add_argument ('- headless'), она отлично работает.
Есть предложения о том, как решить эту проблему?