So wählen Sie einen Wert aus der Dropdown-Liste aus in Selenium
⚡ Intelligente Zusammenfassung
Wert aus Dropdown-Menü auswählen Selenium Diese Methode verwendet die spezielle Select-Klasse zur Steuerung von HTML-SELECT-Elementen. Die Klasse stellt die Methoden selectByVisibleText, selectByValue und selectByIndex bereit, mit denen Optionen präzise ausgewählt und Mehrfachauswahl-Dropdowns unterstützt werden können.

Was ist die Select-Klasse in Selenium?
Das Klasse auswählen in Selenium ist eine Helferklasse aus der org.openqa.selenium.support.ui Paket, das es WebDriver ermöglicht, mit HTML zu interagieren <select> Elemente. Es stellt Methoden bereit, um Optionen anhand des sichtbaren Textes, des Werts oder des Index auszuwählen und abzuwählen sowie um zu erkennen, ob eine Dropdown-Liste Mehrfachauswahlen zulässt.
Parce que Select ist eine regelmäßige Java Wenn Sie eine Klasse erstellen, erstellen Sie eine Instanz mit der new Schlüsselwort und übergeben Sie das WebElement, das auf das <select> Tag auf der Seite.
So wählen Sie Dropdown in aus Selenium
Bevor Sie ein Dropdown-Menü bearbeiten SeleniumEs sind zwei Schritte erforderlich:
- Importieren Sie das Paket org.openqa.selenium.support.ui.Select.
- Instanziiere das Dropdown-Menü als
SelectObjekt in Selenium WebDriver.
Öffnen Sie beispielsweise die Mercury Anmeldeseite für Touren (https://demo.guru99.com/test/newtours/register.php) und suchen Sie das Dropdown-Menü „Land“.
Schritt 1) Importieren Sie das Select-Paket.
import org.openqa.selenium.support.ui.Select;
Schritt 2) Deklarieren Sie das Dropdown-Element als Instanz der Select-Klasse. Im folgenden Beispiel heißt die Instanz: drpCountry.
Select drpCountry = new Select(driver.findElement(By.name("country")));
Schritt 3) Beginnen Sie mit der Steuerung des Dropdown-Menüs. Verwenden Sie eine beliebige Auswahlmethode, um eine Option auszuwählen. Das folgende Beispiel wählt „ANTARKTIS“ aus:
drpCountry.selectByVisibleText("ANTARCTICA");
Wählen Sie Methoden in aus Selenium
Die Select-Klasse bietet verschiedene Methoden zur Interaktion mit Dropdown-Optionen. Die fünf gebräuchlichsten werden im Folgenden beschrieben.
1) selectByVisibleText() und deselectByVisibleText()
- Wählt die Option aus oder hebt die Auswahl auf, deren angezeigter Text mit dem Parameter übereinstimmt.
- Parameter: Der genaue Text, der für die Option angezeigt wird.
Ejemplo:
drpCountry.selectByVisibleText("ANTARCTICA");
2) selectByValue() und deselectByValue()
- Wählt die Option aus oder hebt die Auswahl auf, deren
valueDas Attribut entspricht dem Parameter. - Beachten Sie, dass der angezeigte Text und der
valueDie Attribute sind oft unterschiedlich, wie unten dargestellt. - Parameter: die Option
valueAttribut.
Ejemplo:
drpCountry.selectByValue("234");
3) selectByIndex() und deselectByIndex()
- Wählt die Option am angegebenen Index aus oder hebt die Auswahl auf. Die Indizes beginnen bei null.
- Parameter: der ganzzahlige Index der Option.
Ejemplo:
drpCountry.selectByIndex(0);
4) isMultiple()
- Rücksendungen
TRUEwenn die Dropdown-Liste mehrere gleichzeitige Auswahlen zulässt, andernfallsFALSE. - Parameter: keine.
Ejemplo:
if (drpCountry.isMultiple()) {
// do something here
}
5) deselectAll()
- Löscht alle ausgewählten Optionen. Nur gültig bei Mehrfachauswahl-Dropdown-Listen.
- Parameter: keine.
Ejemplo:
drpCountry.deselectAll();
Komplett Code von Auswahlmethoden in Selenium
Folgende Java Das Programm demonstriert die Select-Klasse sowohl an einem Dropdown-Menü mit einfacher Auswahl als auch an einem Dropdown-Menü mit Mehrfachauswahl.
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 = "https://demo.guru99.com/test/newtours/register.php";
WebDriver driver = new FirefoxDriver();
driver.get(baseURL);
// Single-select drop-down
Select drpCountry = new Select(driver.findElement(By.name("country")));
drpCountry.selectByVisibleText("ANTARCTICA");
// Multi-select drop-down
driver.get("http://jsbin.com/osebed/2");
Select fruits = new Select(driver.findElement(By.id("fruits")));
fruits.selectByVisibleText("Banana");
fruits.selectByIndex(1);
}
}
Auswählen von Elementen in einem Mehrfachauswahlfeld
Das selectByVisibleText() Diese Methode funktioniert auch bei Mehrfachauswahl-Dropdown-Listen. Verwenden Sie beispielsweise https://jsbin.com/osebed/2 als Base URLEs wird ein Dropdown-Menü angezeigt, das die gleichzeitige Auswahl mehrerer Elemente ermöglicht.
Der unten stehende Codeausschnitt wählt die ersten beiden Optionen aus. selectByVisibleText():
Methodenreferenztabelle
Diese Tabelle fasst alle oben beschriebenen Select-Klassenmethoden zum schnellen Nachschlagen zusammen.
| Befehl | Beschreibung |
|---|---|
| selectByVisibleText() / deselectByVisibleText() | Wählt eine Option anhand ihres angezeigten Textes aus oder hebt die Auswahl auf. |
| selectByValue() / deselectByValue() | Wählt eine Option anhand ihres Namens aus oder hebt die Auswahl auf. value Attribut. |
| selectByIndex() / deselectByIndex() | Wählt eine Option anhand ihres nullbasierten Index aus oder hebt die Auswahl auf. |
| isMultiple() | Gibt TRUE zurück, wenn die Dropdown-Liste Mehrfachauswahl zulässt, andernfalls FALSE. |
| Alle abwählen() | Hebt die Auswahl aller zuvor ausgewählten Optionen in einer Mehrfachauswahlliste auf. |
Um Dropdown-Felder zu steuern, importieren Sie die org.openqa.selenium.support.ui.Select Zuerst das Paket erstellen, dann eine Select-Instanz erstellen und eine der oben genannten Methoden aufrufen.

.png)
.png)
.png)
.png)