WebdriverIO — Upload File Example

Image for post
Image for post

During browser automation, you might run into a scenario where you need to upload a test file, this is really easy to do with WebdriverIO. Let’s take a look at an example below.

I’m using this test url for this example which is stored in the wdio.conf.js file.

const path = require('path');describe('Upload File', () => {
it('should be able to upload a file', () => {
// find selectors
const input = $('#file-upload');
const submitBtn = $('#file-submit');
// store test file path
const filePath = path.join(__dirname, '../data/chrome.png');
// use browser.uploadFile to upload the test file
const remoteFilePath = browser.uploadFile(filePath);
// access the test page
browser.url('/upload');
// set file path value in the input field
input.setValue(remoteFilePath);
submitBtn.click(); // click the submit button
// Add your assertion here
});
});

💎 This code is also available on GitHub for you to access and play around with.

https://www.youtube.com/watch?v=e8goAKb6CC0&list=PL6AdzyjjD5HBbt9amjf3wIVMaobb28ZYN.

Written by

I enjoy discussing topics related to Test Automation | Quality Assurance | Web Dev. Check out my Youtube channel — AutomationBro

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store