Upload File using SendKeys in Selenium WebDriver

  • Given any Web page, we can upload a file using sendKeys method in Selenium WebDriver. Lets discuss this in detail.

Upload file using SendKeys method in Selenium WebDriver:

  • Using SendKeys method is the easiest way of uploading a file using Selenium Web driver. This can be achieved using three simple steps:

Upload File SendKeys Selenium WebDriver

Step 1 – Choose File Button :

  • First of all, click on the “Choose File” button to choose the file we wish to upload from our system.
WebElement uploadElenment = driver.findElement(By.id("Choosefile"));
  • We have taken id as “ChooseFile” for this web element.

Step 2 – Select File using sendKeys:

  • Now select the file you want to upload from your machine. Give the path of the file on our machine to send keys method.
uploadElenment.sendKeys("C:\\xyz.txt");

Step 3 – Upload FIle :

  • After clicking on “Upload” button, file will load successfully.
driver.findElement(By.id("UploadFile")).click();

Program to upload a file using sendKeys method:

package TestCases;

import java.io.IOException;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;
import org.testng.annotations.Test;

public class FileUpload {

	@Test
	public void FileUploadTest() throws IOException {
		// Instantiation of driver object to launch browser
		System.setProperty("webdriver.chrome.driver", "C:\\work\\chromedriver.exe");
		WebDriver driver = new ChromeDriver();
		driver.get("https://makeinjava.com");

		// Locating "Choose file" button
		WebElement uploadElenment = driver.findElement(By.id("Choosefile"));
		// Pass the path of the file we want to upload using Sendkeys method
		uploadElenment.sendKeys("C:\\xyz.txt"); 
		// click on the "Upload button to upload file"
		driver.findElement(By.id("UploadFile")).click();
	}
}
Scroll to Top