Проблема при загрузке CSV-файла с использованием Selenide в Jenkins

#selenium #jenkins #testing #automated-tests #selenide

Вопрос:

Я пытаюсь загрузить CSV-файл из локального хранилища.

Инициализация драйвера:

 private static RemoteWebDriver createRemoteWebDriver(DesiredCapabilities caps) throws MalformedURLException {
        RemoteWebDriver driver = new RemoteWebDriver(getBrowserstackURL(), caps);
        driver.setFileDetector(new LocalFileDetector());
        return driver;
    }
 

Способ загрузки:

 public void uploadFileUniversal(String fileName, SelenideElement uploadAreaElement) {
        uploadAreaElement.shouldBe(Condition.enabled, DefaultDuration.DEFAULT);
        LocalFileDetector detector = new LocalFileDetector();
        File localFile = detector.getLocalFile("src/test/resources/"   fileName);
        uploadAreaElement.sendKeys(localFile.getAbsolutePath());
    }
 

Страница:

 <span class="btn btn-default upload-csv"><span class="glyphicon glyphicon-upload"></span>
    <span class="upload-btn-text">Import CSV</span>
    <input id="select-upload-csv" type="file" name="select-upload-assets" accept=".csv, application/vnd.openxmlformats-officedocument.spreadsheetml.sheet, application/vnd.ms-excel">
</span>
 

CSV:

 Slide,Time
1,00:10
2,00:15
3,00:20
 

В результате я получил подтверждающее сообщение от FE. Проблема возникает только при использовании Дженкинса, локально это работает как заклинание.

Комментарии:

1. Вас пытались распечатать localFile.getAbsolutePath() ?

2. @НанданА, да. Путь выглядит так /home/jenkins/workspace/run_repository/src/test/resources/test-data/csv/file_name.csv

3. Можете ли вы попробовать использовать абсолютный путь? Нравится System.getProperty("user.dir") "src/test/resources/" fileName

4. @NandanA, Он возвращает тот же путь