Use the isEnabled() method to check if an element is active and accepts user interaction.
Basic usage:
Java
boolean isEnabled = driver.findElement(By.locator).isEnabled();
System.out.println("Is enabled: " + isEnabled);
Practical examples:
Java
// Check if Submit button is enabled
WebElement submitBtn = driver.findElement(By.id("submitBtn"));
if (submitBtn.isEnabled()) {
submitBtn.click();
} else {
System.out.println("Submit button is disabled — fill in required fields first");
}
// Assert that input field is enabled
WebElement emailField = driver.findElement(By.id("email"));
Assert.assertTrue(emailField.isEnabled(), "Email field should be enabled");
// Check disabled state
WebElement disabledField = driver.findElement(By.id("readonlyField"));
Assert.assertFalse(disabledField.isEnabled(), "Field should be disabled");
Real-world use case: Verifying that a "Submit" button only becomes enabled after all required fields are filled:
Java
WebElement name = driver.findElement(By.id("name"));
WebElement email = driver.findElement(By.id("email"));
WebElement btn = driver.findElement(By.id("submit"));
Assert.assertFalse(btn.isEnabled()); // disabled before filling
name.sendKeys("John");
email.sendKeys("john@test.com");
Assert.assertTrue(btn.isEnabled()); // enabled after filling
