Как установить папку загрузки для Edge в Selenium?
Я пишу автоматизированные тесты с использованием Selenium. Я хочу установить каталог загрузки в Edge, чтобы я мог загружать файлы как часть моего теста. Существует объект EdgeOptions, который я могу предоставить при создании EdgeDriver, но я не знаю, что установить в EdgeOptions.
Я знаю, как это сделать в Chrome
chromeOptions.AddUserProfilePreference("download.default_directory", @"C:\temp")
и Firefox
firefoxOptions.SetPreference("browser.download.dir", @"C:\temp")
Но как мне сделать то же самое в Edge? И заставить его загружаться автоматически без сохранения?
2 ответа
Как уже упоминалось @Prany, вероятно, нет способа установить загрузку автоматически. И если я правильно понял, вы хотите работать с родным окном диалога, когда вы нажимаете кнопку загрузки. Selenium не может взаимодействовать с собственными окнами, но вы можете использовать эту платформу. Пример кода будет выглядеть так:
// Press the A Key Down
KeyboardSimulator.KeyDown(Keys.A);
// Let the A Key back up
KeyboardSimulator.KeyUp(Keys.A);
// Press A down, and let up (same as two above)
KeyboardSimulator.KeyPress(Keys.A);
// Simulate (Ctrl + C) shortcut, which is copy for most applications
KeyboardSimulator.SimulateStandardShortcut(StandardShortcut.Copy);
// This does the same as above
KeyboardSimulator.KeyDown(Keys.Control);
KeyboardSimulator.KeyPress(Keys.C);
KeyboardSimulator.KeyUp(Keys.Control);
Так что вы можете моделировать Ctrl + V
действие клавиатуры и Enter
действие. Надеюсь, поможет.