Для стандартного <input type=file> отправляют путь через sendKeys на input; OS-диалог автоматизировать не нужно.
Разбор
- Input может быть скрыт — иногда делают через JS display.
- Remote WebDriver/Grid: файл должен быть доступен ноде или через LocalFileDetector.
- Drag-and-drop upload — сложнее, часто Actions/JS.
- Проверяйте имя файла в UI после загрузки.
Итог
Upload через sendKeys на file input — канонический путь в Selenium.