Automating dropdowns and lists
Selenium WebDriver supports testing Dropdown and List controls using a special Select class instead of the WebElement class.
The Select class provides various methods and properties to interact with dropdowns and lists created with the HTML <select> element.
In this recipe, we will automate Dropdown and List control using Select class.
How to do it...
Let's create a test for a Dropdown control. This test will perform some basic checks and then call various methods to select options in dropdown.
@Test
public void testDropdown()
{
//Get the Dropdown as a Select using its name attribute
Select make = new Select(driver.findElement(By.name("make")));
//Verify Dropdown does not support multiple selection
assertFalse(make.isMultiple());
//Verify Dropdown has four options for selection
assertEquals(4, make.getOptions().size());
//With Select class we can select an option in Dropdown using //Visible Text
make.selectByVisibleText("Honda");
assertEquals...