Sélection de valeurs déroulantes dans Selenium WebDriver à l'aide de Java
Pour les débutants dans Selenium WebDriver, la sélection de valeurs dans les listes déroulantes peut être un défi courant. Voici un guide complet pour aborder efficacement ce scénario :
Structure HTML :
Tout d'abord, considérons la structure HTML d'une liste déroulante :
Identification de l'élément :
Pour identifier la liste déroulante à l'aide de Selenium WebDriver, vous pouvez utiliser le localisateur By.id() :
WebElement dropdown = driver.findElement(By.id("periodId"));
Création d'un objet de sélection :
Maintenant, pour sélectionner des valeurs dans le liste déroulante, vous devez envelopper le WebElement dans un objet Select :
Select dropdownSelection = new Select(dropdown);
Options de sélection :
Une fois que vous avez un objet Select, vous pouvez sélectionner les options de trois manières :
dropdownSelection.selectByVisibleText("Last 52 Weeks");
dropdownSelection.selectByIndex(1); // 0-based index, so "Last 52 Weeks" is at index 1
dropdownSelection.selectByValue("l52w");
Gestion des problèmes de visibilité :
Si vous rencontrez des erreurs « L'élément n'est pas visible actuellement », cela pourrait être dû au fait que la liste déroulante était initialement masquée. Vous pouvez utiliser WebDriverWait pour attendre que l'élément devienne visible avant d'interagir avec lui :
WebDriverWait wait = new WebDriverWait(driver, 10);
wait.until(ExpectedConditions.visibilityOfElementLocated(By.id("periodId")));
Conclusion :
Avec ces techniques, vous pouvez facilement sélectionner des valeurs déroulantes dans Selenium WebDriver utilisant Java, même dans des scénarios complexes avec des éléments cachés ou dynamiques.
Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.
Copyright© 2022 湘ICP备2022001581号-3