So wählen Sie mit Selenium Webdriver einen Wert aus DropDown aus

Inhaltsverzeichnis:

Anonim

In diesem Tutorial erfahren Sie, wie Sie mit DropDown in Selenium- und Multiple-Select-Vorgängen umgehen.

Wählen Sie Klasse in Selen

Die Select-Klasse in Selen ist eine Methode zum Implementieren des HTML-SELECT-Tags. Das HTML-Auswahl-Tag bietet Hilfsmethoden zum Auswählen und Abwählen der Elemente. Die Select-Klasse ist eine gewöhnliche Klasse, daher wird das Schlüsselwort New verwendet, um das Objekt zu erstellen, und es gibt den Speicherort des Webelements an.

Wählen Sie Option aus dem Dropdown-Feld

Im Folgenden finden Sie eine schrittweise Anleitung zur Auswahl des Werts aus der Dropdown-Liste in Selen:

Bevor wir Dropdown-Listen in Selen bearbeiten und Dropdown-Boxen steuern, müssen wir zwei Dinge tun:

  1. Importieren Sie das Paket org.openqa.selenium.support.ui.Select
  2. Instanziieren Sie das Dropdown-Feld als Objekt. Wählen Sie es in Selenium WebDriver aus

Gehen Sie beispielsweise zur Registrierungsseite von Mercury Tours (http://demo.guru99.com/test/newtours/register.php) und beachten Sie dort das Dropdown-Feld "Land".

Schritt 1

Importieren Sie das Paket "Auswählen".

Schritt 2

Deklarieren Sie das Dropdown-Element als Instanz der Select-Klasse. Im folgenden Beispiel haben wir diese Instanz als "drpCountry" bezeichnet.

Schritt 3

Wir können jetzt mit der Steuerung von "drpCountry" beginnen, indem wir eine der verfügbaren Select-Methoden verwenden, um Dropdown in Selen auszuwählen. Mit dem folgenden Beispielcode wird die Option "ANTARCTICA" ausgewählt.

Auswählen von Elementen in mehreren SELECT-Elementen

Wir können auch die Methode selectByVisibleText () verwenden, um mehrere Optionen in einem Multi-SELECT-Element auszuwählen. Als Beispiel nehmen wir http://jsbin.com/osebed/2 als Basis-URL. Es enthält ein Dropdown-Feld, in dem mehrere Auswahlen gleichzeitig möglich sind.

Der folgende Code wählt die ersten beiden Optionen mit der Methode selectByVisibleText () aus.

Wählen Sie Methoden

Die folgenden Methoden werden am häufigsten in der Selenium-Dropdown-Liste verwendet.

Methode Beschreibung
selectByVisibleText () und deselectByVisibleText () Beispiel:
  • Wählt die Option aus / ab, mit der der dem Parameter entsprechende Text angezeigt wird.
  • Parameter : Der genau angezeigte Text einer bestimmten Option
selectByValue () und deselectByValue () Beispiel:
  • Wählt die Option aus / ab, deren Attribut "Wert" mit dem angegebenen Parameter übereinstimmt.
  • Parameter : Wert des Attributs "Wert"
  • Denken Sie daran, dass nicht alle Dropdown-Optionen denselben Text und "Wert" haben, wie im folgenden Beispiel.
selectByIndex () und deselectByIndex () Beispiel:
  • Wählt die Option am angegebenen Index aus / ab.
  • Parameter : Der Index der auszuwählenden Option.
isMultiple () Beispiel:
  • Gibt TRUE zurück, wenn das Dropdown-Element mehrere Auswahlen gleichzeitig zulässt. FALSCH wenn nicht anders.
  • Keine Parameter erforderlich
deselectAll () Beispiel:
  • Löscht alle ausgewählten Einträge. Dies ist nur gültig, wenn das Dropdown-Element Mehrfachauswahl unterstützt.
  • Keine Parameter erforderlich

Hier ist der vollständige Code

Paket neues Paket;import org.openqa.selenium.WebDriver;import org.openqa.selenium.firefox.FirefoxDriver;import org.openqa.selenium.support.ui.Select;import org.openqa.selenium.By;öffentliche Klasse 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";WebDriver-Treiber = neuer FirefoxDriver ();driver.get (baseURL);Select drpCountry = new Select (driver.findElement (By.name ("country")));drpCountry.selectByVisibleText ("ANTARCTICA");// Elemente in mehreren SELECT-Elementen auswählendriver.get ("http://jsbin.com/osebed/2");Früchte auswählen = neu Auswählen (driver.findElement (By.id ("Früchte")));ruit.selectByVisibleText ("Banane");ruit.selectByIndex (1);}}}}

Zusammenfassung

Element Befehl Beschreibung
Dropdown-Feld selectByVisibleText () / deselectByVisibleText () Aktiviert / deaktiviert eine Option anhand des angezeigten Textes
selectByValue () / deselectByValue () Aktiviert / deaktiviert eine Option anhand des Werts ihres Attributs "Wert"
selectByIndex () / deselectByIndex () wählt eine Option anhand ihres Index aus / ab
isMultiple () Gibt TRUE zurück, wenn das Dropdown-Element eine Mehrfachauswahl gleichzeitig zulässt. FALSCH wenn nicht
Alle abwählen() hebt die Auswahl aller zuvor ausgewählten Optionen auf

Um Dropdown-Felder zu steuern, müssen Sie zuerst das Paket org.openqa.selenium.support.ui.Select importieren und dann eine Select-Instanz erstellen.