Перейти к содержимому

Автоматизатор мобильных приложений
онлайн, начало 11 августа
Тестирование безопасности
онлайн, начало 11 августа
Тестирование мобильных приложений
онлайн, начало 11 августа
Автоматизация тестирования REST API на Python
онлайн, начало 11 августа
Фотография

Скачивание файла с помощью Selenium


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 7

#1 patr14ek

patr14ek

    Новый участник

  • Members
  • Pip
  • 37 сообщений
  • ФИО:Lizz Stumph
  • Город:localhost


Отправлено 23 ноября 2011 - 13:58

Доброго времени суток!
У меня возникла следующая проблема: необходимо протестировать автоматическую загрузку файла по клику на ссылку.
Я пробовала использовать метод attachFile: $this->attachFile("xpath=id('mainGrid')/div[3]/div/div[6]/div", dirname( __FILE__ ));
Однако тест падает с ошибкой: java.lang.RuntimeException: Malformed URL </path/to/tests/functional/Validation/>, .
Скажите пожалуйста,что я делаю не так или можно ли сделать это как-то по-другому.
Использую Selenium RC + phpunit + Firefox 3.6
Спасибо. :]
  • 0
ЕДРЕНАЯ КОНСОЛЬ ДЕЛАЕТ МЕНЯ СИЛЬНЕЙ!

#2 point80

point80

    Новый участник

  • Members
  • Pip
  • 19 сообщений
  • ФИО:Дормидонтов Семён

Отправлено 24 ноября 2011 - 07:52

Доброго времени суток!
У меня возникла следующая проблема: необходимо протестировать автоматическую загрузку файла по клику на ссылку.
Я пробовала использовать метод attachFile: $this->attachFile("xpath=id('mainGrid')/div[3]/div/div[6]/div", dirname( __FILE__ ));
Однако тест падает с ошибкой: java.lang.RuntimeException: Malformed URL </path/to/tests/functional/Validation/>, .
Скажите пожалуйста,что я делаю не так или можно ли сделать это как-то по-другому.
Использую Selenium RC + phpunit + Firefox 3.6
Спасибо. :]


Нифига не понятно. Требуется скачивание (Downloading) с сервера или закачивание (Uploading) на сервер?
Если скачивание, то через селениум кликаем по кнопке скачать, а дальше средствами языка проверять файл в темповой папке.
Если файл нужно закачать, через селениум.
  • 0

#3 patr14ek

patr14ek

    Новый участник

  • Members
  • Pip
  • 37 сообщений
  • ФИО:Lizz Stumph
  • Город:localhost


Отправлено 25 ноября 2011 - 07:05

Нифига не понятно. Требуется скачивание (Downloading) с сервера или закачивание (Uploading) на сервер?
Если скачивание, то через селениум кликаем по кнопке скачать, а дальше средствами языка проверять файл в темповой папке.
Если файл нужно закачать, через селениум.


Мне нужно скачать файл с сервера.
А можно как-то прописать диреторию,куда будет скачиваться файл?
  • 0
ЕДРЕНАЯ КОНСОЛЬ ДЕЛАЕТ МЕНЯ СИЛЬНЕЙ!

#4 point80

point80

    Новый участник

  • Members
  • Pip
  • 19 сообщений
  • ФИО:Дормидонтов Семён

Отправлено 25 ноября 2011 - 09:29


Нифига не понятно. Требуется скачивание (Downloading) с сервера или закачивание (Uploading) на сервер?
Если скачивание, то через селениум кликаем по кнопке скачать, а дальше средствами языка проверять файл в темповой папке.
Если файл нужно закачать, через селениум.


Мне нужно скачать файл с сервера.
А можно как-то прописать диреторию,куда будет скачиваться файл?



Настрой в Firefox профиль и при инициализации теста его подсовывай (см. мануал к селениуму). Хром скачивает в папку "Загрузки" профиля пользователя. IE кажется тоже.
  • 0

#5 patr14ek

patr14ek

    Новый участник

  • Members
  • Pip
  • 37 сообщений
  • ФИО:Lizz Stumph
  • Город:localhost


Отправлено 28 ноября 2011 - 13:37



Нифига не понятно. Требуется скачивание (Downloading) с сервера или закачивание (Uploading) на сервер?
Если скачивание, то через селениум кликаем по кнопке скачать, а дальше средствами языка проверять файл в темповой папке.
Если файл нужно закачать, через селениум.


Мне нужно скачать файл с сервера.
А можно как-то прописать диреторию,куда будет скачиваться файл?



Настрой в Firefox профиль и при инициализации теста его подсовывай (см. мануал к селениуму). Хром скачивает в папку "Загрузки" профиля пользователя. IE кажется тоже.



Хм.. А если я тестирую на различных машинах,с различными операционками?
Разве нельзя именно Селениуму указать,куда качать файл? Мне показывали нечто подобное, но не на похапэ. А как здесь сделать,я не знаю =//
  • 0
ЕДРЕНАЯ КОНСОЛЬ ДЕЛАЕТ МЕНЯ СИЛЬНЕЙ!

#6 ak40u

ak40u

    Новый участник

  • Members
  • Pip
  • 46 сообщений

Отправлено 29 ноября 2011 - 09:19




Нифига не понятно. Требуется скачивание (Downloading) с сервера или закачивание (Uploading) на сервер?
Если скачивание, то через селениум кликаем по кнопке скачать, а дальше средствами языка проверять файл в темповой папке.
Если файл нужно закачать, через селениум.


Мне нужно скачать файл с сервера.
А можно как-то прописать диреторию,куда будет скачиваться файл?



Настрой в Firefox профиль и при инициализации теста его подсовывай (см. мануал к селениуму). Хром скачивает в папку "Загрузки" профиля пользователя. IE кажется тоже.



Хм.. А если я тестирую на различных машинах,с различными операционками?
Разве нельзя именно Селениуму указать,куда качать файл? Мне показывали нечто подобное, но не на похапэ. А как здесь сделать,я не знаю =//


На путь сохранения файла селениум не влияет. Его возможно указать только в браузере, или воспользоваться дополнительными библиотеками для автоматизации работы с окном сохранения файла(в случае с IE и FF).
Для IE на win7 я использовал Autoit со встроенными функциями controlSend, controlClick - т.к. окно сохранения файла имеет стандартные управляющие элементы.
Для FF на win7 я использовал свой, заранее созданный профиль, в котором, в настройках указал путь, куда сохранять закачки, и убрал галку, чтобы не показывал окно загрузки файла. Потом, когда надо было качать файл из FF в селениуме (webdriver+java) при создании объекта webdriver, аргументом передавал этот профиль:
ProfilesIni allProfiles = new ProfilesIni();
FirefoxProfile profile = allProfiles.getProfile("SelenProfile"); // имя ранее созданного профиля
WebDriver driver = new WebDriver(profile); // вместо WebDriver подставить нужный класс.

  • 0

#7 ch_ip

ch_ip

    Гуру

  • Members
  • PipPipPipPipPipPip
  • 1 097 сообщений
  • ФИО:Павел Абдюшев
  • Город:Москва


Отправлено 29 ноября 2011 - 10:45

На путь сохранения файла селениум не влияет. Его возможно указать только в браузере, или воспользоваться дополнительными библиотеками для автоматизации работы с окном сохранения файла(в случае с IE и FF).
Для IE на win7 я использовал Autoit со встроенными функциями controlSend, controlClick - т.к. окно сохранения файла имеет стандартные управляющие элементы.
Для FF на win7 я использовал свой, заранее созданный профиль, в котором, в настройках указал путь, куда сохранять закачки, и убрал галку, чтобы не показывал окно загрузки файла. Потом, когда надо было качать файл из FF в селениуме (webdriver+java) при создании объекта webdriver, аргументом передавал этот профиль:

ProfilesIni allProfiles = new ProfilesIni();
FirefoxProfile profile = allProfiles.getProfile("SelenProfile"); // имя ранее созданного профиля
WebDriver driver = new WebDriver(profile); // вместо WebDriver подставить нужный класс.


А можно профиль сетапить непосредственно при запуске браузера:
 def initialize
    profile = Selenium::WebDriver::Firefox::Profile.new
    profile['browser.download.dir'] = Settings::PATH_TO_SAVE  #здесь путь, куда сохранять
    profile['browser.download.folderList'] = 2
    profile['browser.download.manager.closeWhenDone'] = true
    profile['browser.helperApps.neverAsk.saveToDisk'] = "application/vnd.ms-excel" # Тут надо прописать тот формат, который вам нужен

    @browser = Selenium::WebDriver.for :firefox, :profile => profile
  end

  • 0

#8 Vitalik_V

Vitalik_V

    Активный участник

  • Members
  • PipPip
  • 149 сообщений
  • ФИО:Виталий
  • Город:Харьков

Отправлено 23 декабря 2011 - 12:41


На путь сохранения файла селениум не влияет. Его возможно указать только в браузере, или воспользоваться дополнительными библиотеками для автоматизации работы с окном сохранения файла(в случае с IE и FF).
Для IE на win7 я использовал Autoit со встроенными функциями controlSend, controlClick - т.к. окно сохранения файла имеет стандартные управляющие элементы.
Для FF на win7 я использовал свой, заранее созданный профиль, в котором, в настройках указал путь, куда сохранять закачки, и убрал галку, чтобы не показывал окно загрузки файла. Потом, когда надо было качать файл из FF в селениуме (webdriver+java) при создании объекта webdriver, аргументом передавал этот профиль:

ProfilesIni allProfiles = new ProfilesIni();
FirefoxProfile profile = allProfiles.getProfile("SelenProfile"); // имя ранее созданного профиля
WebDriver driver = new WebDriver(profile); // вместо WebDriver подставить нужный класс.


А можно профиль сетапить непосредственно при запуске браузера:
 def initialize
    profile = Selenium::WebDriver::Firefox::Profile.new
    profile['browser.download.dir'] = Settings::PATH_TO_SAVE  #здесь путь, куда сохранять
    profile['browser.download.folderList'] = 2
    profile['browser.download.manager.closeWhenDone'] = true
    profile['browser.helperApps.neverAsk.saveToDisk'] = "application/vnd.ms-excel" # Тут надо прописать тот формат, который вам нужен

    @browser = Selenium::WebDriver.for :firefox, :profile => profile
  end

К сожалению на ПХП нет таких же средств как на джаве. Может кто то подсказать как лучше это сделать на ПХП с JsonWireProtocol?
  • 0


Selenium 2.0: стартовый уровень
онлайн
Программирование на Java для тестировщиков
онлайн
Автоматизация функционального тестирования
онлайн
Selenium WebDriver: полное руководство
онлайн



Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных

Яндекс.Метрика
Реклама на портале