Есть отличная удаленная работа для php+codeception+jenkins+allure+docker спецов. 100% remote! Присоединиться к проекту

Работаю з Selenium и robot framework, как в тетсте написать чтоб добавить файл


(Ярослав Бойко) #1

Работаю з Selenium и robot framework, как в тетсте написать чтоб добавить файл, для примера на веб пейдже есть кнопка загрузить, и мне открывается окно линукса(виндовса) из машины нужно выбрать файл. Подскажите как правильно сделать, заранее спасибо!


(rmerkushin) #2

Воспользуйтесь AutoIt библиотекой. Либо как вариант воспользуйтесь вот этим тут загрузка идет через send_keys в input элемент. В документации кейворда нет. Используйте так:
| Upload File | xpath | path_to_file |


(Ярослав Бойко) #3

У меня убунта и когда нажимаю баттон загрузить мне сразу открывается окно машини із дисками і файлами


(rmerkushin) #4

Тогда sikuli или это еще xdotool и autokey.

P.S.: средствами самого selenium это не делается, только если через send_keys как я и писал выше.


(Ярослав Бойко) #5

(<)button class=“btn btn-primary ng-pristine ng-untouched ng-valid” ng-show=“isEdit” accept=".png,.jpg,.tiff,.doc,.docx,.xls,.xlsx,.ppt,.pptx,.rar,.gzip,.tar.bz2,.tar.gz,.zip,.tar,.pdf,.djvu,.txt,.p7s,.7z" ng-multiple=“true” ng-model=“files” ngf-select=""(>)Завантажити(<)/button(>)
Моя строка которую нажать нужно и она дает окно


(rmerkushin) #6

это кнопка всего лишь. должен быть рядом input элемент. посмотрите пример тут: http://www.w3schools.com/jsref/tryit.asp?filename=tryjsref_fileupload_get в случае примера нас интересует это

<input type="file" id="myFile">

(Ярослав Бойко) #7

input id=“mForm:data:docFile_input” type=“file” name=“mForm:data:docFile_input”
есть строка, подскажите как сделать ? Я на убунте, autoit я читал он для виндовса


(rmerkushin) #8

Я же написал скачиваете либу Selenium2LibraryExt и пишете это:

| Upload File | xpath | path_to_file |


(Ярослав Бойко) #9

Library Selenium2LibraryExt
| Upload File | id=mForm:data:docFile_input | /home/yboi/Робочий стіл/Document.docx |
Так написал в тесте robot framework.
нужно боязательно ето | или можна
Upload File id=mForm:data:docFile_input /home/yboi/Робочий стіл/Document.docx


(Ярослав Бойко) #10

можете написать покроково, что делать что скачать/установить бибилиотеку


(Ярослав Бойко) #11

Все розобрался) спс большое


(Valeria Codrean) #12

Hi! I have a question. Was imported Selenium2LibraryExt and i followed this methode (| Upload File | xpath | path_to_file |) but I observed something strange, the file is not uploaded, what about test, it is passed. What should I do?


(rmerkushin) #13

Check your xpath and path to file (absolute path). You should specify xpath for upload form - input tag, like this http://www.w3schools.com/jsref/tryit.asp?filename=tryjsref_fileupload_get You need this element for example above:

<input type="file" id="myFile">

P.S.: And don’t forget click upload button :wink:


(Valeria Codrean) #14

Thank you for answer :blush: