Dans ce didacticiel, nous allons apprendre à gérer DropDown dans Selenium et les opérations de sélection multiple.
Sélectionnez une classe dans Selenium
La classe Select dans Selenium est une méthode utilisée pour implémenter la balise HTML SELECT. La balise de sélection html fournit des méthodes d'aide pour sélectionner et désélectionner les éléments. La classe Select est une classe ordinaire, donc le mot-clé New est utilisé pour créer son objet et il spécifie l'emplacement de l'élément Web.
Sélectionnez une option dans la liste déroulante
Voici un processus étape par étape sur la façon de sélectionner une valeur dans la liste déroulante de Selenium:
Avant de gérer la liste déroulante dans Selenium et de contrôler les listes déroulantes, nous devons faire les deux choses suivantes:
- Importez le package org.openqa.selenium.support.ui.Select
- Instanciez la liste déroulante en tant qu'objet, sélectionnez dans Selenium WebDriver
Par exemple, allez sur la page d'inscription de Mercury Tours (http://demo.guru99.com/test/newtours/register.php) et notez la liste déroulante "Pays".
Étape 1
Importez le package "Select".
Étape 2
Déclarez l'élément déroulant comme une instance de la classe Select. Dans l'exemple ci-dessous, nous avons nommé cette instance "drpCountry".
Étape 3
Nous pouvons maintenant commencer à contrôler "drpCountry" en utilisant l'une des méthodes Select disponibles pour sélectionner la liste déroulante dans Selenium. L'exemple de code ci-dessous sélectionnera l'option «ANTARCTIQUE».
Sélection d'éléments dans plusieurs éléments SELECT
Nous pouvons également utiliser la méthode selectByVisibleText () pour sélectionner plusieurs options dans un élément SELECT multiple. À titre d'exemple, nous prendrons http://jsbin.com/osebed/2 comme URL de base. Il contient une liste déroulante qui permet plusieurs sélections à la fois.
Le code ci-dessous sélectionnera les deux premières options à l'aide de la méthode selectByVisibleText ().
Sélectionnez les méthodes
Voici les méthodes les plus couramment utilisées dans la liste déroulante Selenium.
Méthode | Description |
---|---|
selectByVisibleText () et deselectByVisibleText ( ) Exemple: ![]() |
|
selectByValue () et deselectByValue ( ) Exemple: ![]() |
![]() |
selectByIndex () et deselectByIndex ( ) Exemple: ![]() |
|
isMultiple () Exemple: ![]() |
|
deselectAll () Exemple: ![]() |
|
Voici le code complet
package newpackage;import org.openqa.selenium.WebDriver;import org.openqa.selenium.firefox.FirefoxDriver;import org.openqa.selenium.support.ui.Select;import org.openqa.selenium.By;public class accessDropDown {public static void main (String [] args) {System.setProperty ("webdriver.gecko.driver", "C: \\ geckodriver.exe");String baseURL = "http://demo.guru99.com/test/newtours/register.php";Pilote WebDriver = nouveau FirefoxDriver ();driver.get (baseURL);Select drpCountry = new Select (driver.findElement (By.name ("country")));drpCountry.selectByVisibleText ("ANTARCTIQUE");// Sélection d'éléments dans plusieurs éléments SELECTdriver.get ("http://jsbin.com/osebed/2");Select fruits = new Select (driver.findElement (By.id ("fruits")));fruits.selectByVisibleText ("Banane");fruits.selectByIndex (1);}}
Résumé
Élément | Commander | Description |
---|---|---|
Boîte déroulante | selectByVisibleText () / deselectByVisibleText () | sélectionne / désélectionne une option par son texte affiché |
selectByValue () / deselectByValue () | sélectionne / désélectionne une option par la valeur de son attribut "valeur" | |
selectByIndex () / deselectByIndex () | sélectionne / désélectionne une option par son index | |
isMultiple () | renvoie TRUE si l'élément déroulant permet une sélection multiple à la fois; FALSE sinon | |
tout déselectionner() | désélectionne toutes les options précédemment sélectionnées |
Pour contrôler les listes déroulantes, vous devez d'abord importer le package org.openqa.selenium.support.ui.Select, puis créer une instance Select.