Как загрузить файл, не используя autoit и используя только selenium и java? - PullRequest
0 голосов
/ 07 сентября 2018

Здесь находится элемент проверки кнопки, для которого загрузка файла не работает

<button class="btn btn-success text-capitalize" id="ac-btn-imprt" type="button">Browse File</button>

Так что, когда я пытаюсь сделать sendkeys, это не работает, потому что для отправки ключей это должен быть тег ввода в моем случае это как кнопка type =.

Заранее спасибо.

Примечание- 1. Я использую селен с Java для автоматизации своего приложения. 2. Я использовал класс робота, который работает с перебоями, и я не смог отладить реализацию класса робота, так как я не работал над ним.

Ответы [ 2 ]

0 голосов
/ 11 сентября 2018

Вы можете использовать JAR ROBOT API для загрузки файла. Просто нажмите кнопку обзора, и когда вам нужно указать местоположение файла для загрузки, используйте Robot API для отправки местоположения, а затем снова, используя Robot API, нажмите enter.

try {
        //Setting clipboard with file location
        setClipboardData(fileLocation);
        //native key strokes for CTRL, V and ENTER keys
        Robot robot = new Robot();

        robot.keyPress(KeyEvent.VK_CONTROL);
        robot.keyPress(KeyEvent.VK_V);
        robot.keyRelease(KeyEvent.VK_V);
        robot.keyRelease(KeyEvent.VK_CONTROL);
        robot.keyPress(KeyEvent.VK_ENTER);
        robot.keyRelease(KeyEvent.VK_ENTER);
    } catch (Exception exp) {
        exp.printStackTrace();
    }
0 голосов
/ 07 сентября 2018

Добавить LocalFileDetector в драйвер, если вы используете RemoteWebDriver:

driver.setFileDetector(new LocalFileDetector());

Найти скрытый <input type="file"> в HTML и абсолютный путь sendKeys к файлу.

Подробности вы можете найти:

Как загрузить файл с помощью Selenium WebDriver в Java

https://sqa.stackexchange.com/questions/12851/how-can-i-work-with-file-uploads-during-a-webdriver-test

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...