Soy nuevo en selenio, actualmente estoy trabajando en selenio webdriver quiero seleccionar un valor de la lista desplegable. El id=periodId y la opción es muchos en que estoy tratando de seleccionar los últimos 52 semanas.
Aquí está el código HTML:
<select id="periodId" name="period" style="display: none;">
<option value="l4w">Last 4 Weeks</option>
<option value="l52w">Last 52 Weeks</option>
<option value="daterange">Date Range</option>
<option value="weekrange">Week Range</option>
<option selected="" value="monthrange">Month Range</option>
<option value="yeartodate">Year To Date</option>
</select>
Por favor, sugiérame algunas formas de hacer clic en el desplegable.
Lo he intentado con las líneas de ejemplo anteriores, pero estoy recibiendo un error como El elemento no es visible actualmente y por lo tanto no se puede interactuar con él Duración del comando o tiempo de espera: 32 milisegundos los valores de los desplegables tienen el formato del widget jquery multiselect.
Sólo tiene que envolver su WebElement en Select Object como se muestra a continuación
Select dropdown = new Select(driver.findElement(By.id("identifier")));
Una vez hecho esto, puede seleccionar el valor requerido de 3 maneras. Considere un archivo HTML como este
<html>
<body>
<select id = "designation">
<option value = "MD">MD</option>
<option value = "prog"> Programmer </option>
<option value = "CEO"> CEO </option>
</option>
</select>
<body>
</html>
Ahora para identificar el desplegable haga
Select dropdown = new Select(driver.findElement(By.id("designation"));
Para seleccionar su opción digamos 'Programador' puedes hacer
dropdown.selectByVisibleText("Programador");
o
dropdown.selectByIndex(1);
o
dropdown.selectByValue("prog");
Prueba esto:
driver.findElement(By.name("period")).sendKeys("Last 52 Weeks");