Удаленка для jenkins+selenide+selenoid+allure+docker спецов на 2-3 часа в день. 100% remote! Присоединиться к проекту

передача файла под загрузку Webdriver+jquery

jquery
webdriver
javascript
Теги: #<Tag:0x00007fedc07bd710> #<Tag:0x00007fedc07bd4b8> #<Tag:0x00007fedc07bd210>

(HS) #1

Здравствуйте! Необходима помощь. мне необходимо подгрузить файл с помощью Webdriver+jquery
в

нет инпута для передачи пути к файлу. пробовал робот - без успешно


(Oleksii Ihnatiuk) #2

Попробуйте сделать поиск по форуму. Есть несколько идентичных тем, где благополучно решили идентичную проблему.
Приатачте код ваших попыток.
Попробуйте создавать инстанс робота в отдельном потоке и до нажатия на кнопку.
Попробуйте сделать аплоад с помощью js


(Ray Romanov) #3

Даже возможно, где-то в дереве страницы есть hidden input поле…


(Ramon Menezes) #4

есть варианты когда инпута нет, я решил это полной эмуляцией нажатия на клавиши во всплывающем окне(да тупо и нельзя дать 100% гарантии что оно будет всегда отрабатывать так как нельзя всунуть проверки, но тем не менее работает)
обьясняю, нажимаете на форме которая у вас на кнопку залить файл, потом по дефолту открывается форточка для аплоада, в нее вставляете путь к файлу и жмете ентер

в процессе могут возникнуть проблеммы с фокусом, тут нужно поигратся
PS да можно сделать jquery injection, но имхо это ни… не совсем эмуляция действий пользователя
PPS если нужно могу поискать пример кода на жава


(HS) #5

Если можно, буду признателен


(Yaroslav Pernerovskyy) #6

Точно нет инпут филда? $$(“input[type=file]”) в консоли что говорит?


(HS) #7

Выше все что есть привел


(HS) #8

Возможно путь необходимо записывать сюда?


(Bolatbek) #9

Голосую. Точно нет ?


(HS) #11

поясните, пожалуйста


(HS) #12

Input нет


(Vatslau) #13

Вот рабочие сниппеты AutoIt для Фаерфокса - компилируйте и вперёд)

Java invoke:

    public ObjectFile uploadFile(SelenideElement input) {
        this.isFile = true;
        String relativePath = "src/test/java/UploadFiles/"+ this.fileFullName;
        String absolutePath = new File(relativePath).getAbsolutePath();
        rootLogger.info(absolutePath);
        sleep(2000);
        input.waitUntil(exist, 20000).sendKeys(absolutePath);
        sleep(3000);
        return this;
    }

(HS) #14

А в скобках должен быть tittle окна? А если он (tittle) на кириллице? Просто на кириллице он заменяется на символы “???”


(HS) #15

А есть решения для удаленной работы на ВМ?


(Vatslau) #16

Используйте английскую локаль для нативных программ


(Vatslau) #17

не вижу проблемы установить аутоит на ВМ


(HS) #18

Vatslau, подскажите, а скрипт с каким расширением необходимо сохранять, чтоб можно было использовать как под windows так и под Linux?


(Yaroslav Pernerovskyy) #19

А в линуксе потянет?


как изменить содержимое тега <a> с помощью jQuery?
(Vatslau) #20

Autoit windows only

Что вы уцепились за линкукс с 0001% юзеров
учитывая что я реально встречал баги для ФФ Линкус, которых не было на ФФ виндоском.


(HS) #21

на сервере линукс. необходимо системно запускать тесты