</>

Technology

Selenium

Difficulty

Beginner

Interview Question

How to clear the text in a text box using Selenium WebDriver?

Use element.clear() method to remove all text from an input field. Combine with sendKeys() to replace existing text with new content.

Answer

Clearing Text in a Text Box Using Selenium

Method 1 — clear() (standard approach):

Java
WebDriver driver = new FirefoxDriver();
driver.get("https://www.gmail.com");

WebElement emailField = driver.findElement(By.xpath("xpath_of_element1"));
emailField.sendKeys("Software Testing ");  // Type some text
emailField.clear();  // Clear all text from the field

Full test example:

Java
@Test
public void clearAndRetype() {
    driver.get("https://example.com/form");

    WebElement input = driver.findElement(By.id("username"));

    // Type initial text
    input.sendKeys("oldUsername");
    Assert.assertEquals(input.getAttribute("value"), "oldUsername");

    // Clear and retype
    input.clear();
    Assert.assertEquals(input.getAttribute("value"), "");

    input.sendKeys("newUsername");
    Assert.assertEquals(input.getAttribute("value"), "newUsername");
}

Method 2 — Keyboard shortcuts:

Java
// Select All + Delete
WebElement input = driver.findElement(By.id("username"));
input.sendKeys(Keys.CONTROL + "a");
input.sendKeys(Keys.DELETE);

// Or using Actions class
Actions actions = new Actions(driver);
actions.click(input)
       .keyDown(Keys.CONTROL)
       .sendKeys("a")
       .keyUp(Keys.CONTROL)
       .sendKeys(Keys.DELETE)
       .perform();

Method 3 — JavascriptExecutor:

Java
JavascriptExecutor js = (JavascriptExecutor) driver;
WebElement input = driver.findElement(By.id("username"));
js.executeScript("arguments[0].value='';", input);

Method 4 — Triple-click to select all then type:

Java
WebElement input = driver.findElement(By.id("username"));
input.click();
input.click();
input.click();  // Triple-click selects all text
input.sendKeys("newValue");  // Overwrites selected text

When clear() might not work:

  • Read-only fields — use JavascriptExecutor instead
  • React/Angular inputs that ignore clear() — use keyboard events
  • Inputs with onchange listeners — trigger event after clear

Key answer: Use element.clear() method to clear text from a text box using Selenium WebDriver.

Follow AutomateQA

Related Topics