Ваше мнение важно для нас.
Поделитесь своими предоложениями и пожеланиями.

Как в Selenium WebDriver (Java) можно сделать аплоад файла (HTML5 + Plupload)?


Сейчас использую Robot class, но он не всегда срабатывает как надо.
Может кто-то уже писал что-то подобное, посоветуйте плиз
1

Ответы

0
Ссылка
Я делал загрузку файла с помощью Selenium WebDriver. Насколько я понимаю, проблема собственно с выбором файла, потому что при клике появляется модальное окно, которое блокирует работу WebDriver'a? По крайней мере это то, с чем у меня был затык. Дело в том, что кликать на поле ввода не нужно, я делал просто так:
        WebElement element = driver.findElement(By.id("fileInput"));
element.sendKeys("path\\to\\local\\file");


Но это только для HTML5 файл-инпутов. В Plupload, вообще говоря, кроме HTML5, есть еще куча вариантов загрузки файлов: Flash, HTML 5 Gears, Silverlight и BrowserPlus. С ними такой вариант не прокатит, потому как отсутствует HTML элемент в который можно ввести адрес.

Да и еще одно, на всякий случай, Plupload в варианте HTML5 создает файл-инпут с генеренным id атрибутом, потому выбирать его таким образом как в примере не выйдет. Вместо этого, можно написать, к примеру XPath, вроде такого:

"//input[@type='file'][starts-with(@id,'html5')]"
Для того, чтоб отвечать на вопросы или зарегистрируйтесь.
ИТ-цитата
"Пользователь не знает, чего он хочет, пока не увидит то, что он получил."
Эдвард Йодан