Im trying to upload CSV file from local storage.
Driver initialization:
private static RemoteWebDriver createRemoteWebDriver(DesiredCapabilities caps) throws MalformedURLException {
RemoteWebDriver driver = new RemoteWebDriver(getBrowserstackURL(), caps);
driver.setFileDetector(new LocalFileDetector());
return driver;
}
Upload method:
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());
}
Page:
<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
As result, I have gotten a validation message from FE. An issue appears only using Jenkins, locally it works like a charm.