Upload file in test using Javascript and Selenium

upload
selenium
javascript
Теги: #<Tag:0x00007fedb7d7fe68> #<Tag:0x00007fedb7d7fd28> #<Tag:0x00007fedb7d7fbe8>

(Alex) #1

Всем привет!

Есть не сложный сценарий:

  1. Нажимаем на кнопку “upload”
  2. Выбираем файл в системе
  3. Подтверждаем

Задача: реализовать в тесте автоматическую загрузку файла.

Проблема заключается в том, что реализовать это нужно на JavaScript и никак иначе. Но JS не работает с операционной системой компьютера, а файл выбрать нужно. У меня получалось такое реализовать на Java, но на JS не имею понятия как это сделать. Ребят, есть какие-нибудь идеи?


(Lev Yarushin) #2

На браузерном JS так не получится сделать из-за ограничений безопасности.
Возможно реализовать на node.js


(Valentin Buryakov) #3

Я таким способом загружаю файлы в JS используя Protractor может поможет, суть в том что передаем абсолютный путь к картинке в input и она потом загружается. Т.к. говорили с операционной системой JS не работает.

$('input[type="file"]').sendKeys(absolutePath);
// wait for image loading    
browser.sleep(1000);
// click Ok in selection dialog
$(.btn-primary).click()

(Сергей Кузьмин) #4

a кто нибудь пробовал https://github.com/daizoru/node-sikuli ?