t.me/atinfo_chat Telegram группа по автоматизации тестирования

Upload files через Selenium Grid

Теги: #<Tag:0x00007f9aff3c6170> #<Tag:0x00007f9aff3c6080> #<Tag:0x00007f9aff3c5f90> #<Tag:0x00007f9aff3c5ec8> #<Tag:0x00007f9aff3c5dd8>

Например работающий фрагмент кода на Mac OS: (автоматизация на Ruby, Cucumber, Watir)
в функции datapath мы видим абсолютный путь к файлу.
Далее в file_upload через set делаем присваивание (можно еще через send_keys)

  def datapath(filename)
    File.expand_path(File.join(File.dirname(__FILE__), '../../../../Test files/', filename))
  end

  def file_upload(file_name, folder)
    upload_popover_element.when_visible(60)
    file = @browser.file_field(:id, 'upload_dialog')
    upload_file.set(datapath("#{folder}/#{file_name}"))
  end

Проблема:
Система ожидает загрузки файла с абсолютного пути.

/Users/bla/RubymineProjects/testing/Test files/Eng test files/test_doc.doc (Errno::ENOENT)

А путь нужно брать с удаленной машины:

C:/Test files/Eng test files/test_doc.doc

Вопрос:
Как сделать так чтобы можно было загрузить файл через grid?
Какие еще есть методы?
Как делаете вы?

Делал по этим примерам работает только на Mac OS.
Selenium file upload feature
File Fields raise an error if path cannot be found
file_detector error watir webdriver

У меня лежат файлы там где происходит запуска браузера(мобильного устройства) в селениуме.

да у меня тоже там лежат, но только почему то отуда НЕ берутся файлы, ищет там где запускался скрипт…

А ну да блин скрипты запускаются у меня там же.

сегодня увидел что нет привязки если запускать тест

но если просмотреть вручную и после рефреша, можно увидеть input id
http://screencast.com/t/NyhlQ9SVb
пробовал делать рефреш драйвером - но элемента все равно нет …
что делать?