usage selenium select class
Im vorherigen Tutorial haben wir uns mit den verschiedenen Arten von Assert-Anweisungen befasst, die im Java-basierten Unit-Testing-Framework verfügbar sind, und deren Anwendungen mit Beispielen. In Wiederholung der Tatsache, dass Behauptungen als „Automation Test Engineer“ eine sehr entscheidende und wichtige Rolle bei der Entwicklung von Testskripten spielen.
Wir würden uns auf die wenigen bevorstehenden Tutorials in der Selenium-Reihe konzentrieren Umgang mit den verschiedenen Arten von Webelementen, die auf den Webseiten verfügbar sind . Daher würden wir in diesem Tutorial berücksichtigen 'Dropdowns' und üben ihre Handhabungsstrategien aus .
Was ist beschreibende Programmierung in QTP
Bevor wir uns der Problemstellung und ihrer Lösung zuwenden, nehmen wir uns einen Moment Zeit, um die zu testende Anwendung vorzustellen und ein Verständnis dafür zu schaffen. Als Beispiel haben wir eine erstellt Dummy-HTML-Seite bestehend aus mehreren und verschiedenen Webelementen.
Die elementaren Webelemente, aus denen die Webseite besteht, sind:
- Hyperlink
- Taste
- Dropdown-Liste
Bitte verweisen Sie auf die oben genannte Webseite:
Was du lernen wirst:
- Erläuterung der zu testenden Anwendung
- Zu automatisierendes Szenario
- WebDriver-Code mit Selenium Select Class
- Code-exemplarische Vorgehensweise
- Fazit
- Literatur-Empfehlungen
Erläuterung der zu testenden Anwendung
Wir haben die Webseite so gestaltet, dass sie einige grundlegende Arten von Webelementen enthält.
- Hyperlink : Die beiden Hyperlinks 'Google' und 'abodeQA' wurden bereitgestellt, die den Benutzer zu 'https://www.google.co.in/' bzw. 'http://www.abodeqa.com/' weiterleiten auf das Klickereignis.
- Dropdown-Liste : Die drei Dropdowns wurden für die Auswahl von Farben, Früchten und Tieren mit einem bereits auf Standard gesetzten Wert erstellt.
- Taste : Eine Schaltfläche zum Ausprobieren wurde erstellt, um das Popup-Fenster mit den Schaltflächen OK und Abbrechen beim Klicken anzuzeigen.
Nachfolgend finden Sie den HTML-Code, der zum Erstellen der oben genannten Webseite verwendet wird:
Testing Select Class Red Green Yellow Grey Apple Orange Mango Lime Select Elephant Mouse Dog Click the button to display a confirm box.
Try it function myFunction() { confirm('Press a button!'); }
Zu automatisierendes Szenario
- Starten Sie den Webbrowser und öffnen Sie die Webseite
- Klicken Sie auf den Hyperlink 'Google'
- Navigieren Sie zurück zur ursprünglichen Webseite
- Wählen Sie das Dropdown-Menü 'Grün'
- Wählen Sie die 'Orange' in der Frucht-Dropdown-Liste
- Wählen Sie den 'Elefanten' in der Tier-Dropdown-Liste
WebDriver-Code mit Selenium Select Class
Bitte beachten Sie, dass wir für die Skripterstellung das im vorherigen Tutorial erstellte Projekt „Learning_Selenium“ verwenden würden.
Schritt 1:: Erstellen Sie eine neue Java-Klasse mit dem Namen 'HandlingDropDown' unter dem Projekt 'Learning_Selenium'.
Schritt 2:: Kopieren Sie den folgenden Code und fügen Sie ihn in die Klasse 'HandlingDropDown.java' ein.
Unten finden Sie das Testskript, das dem oben genannten Szenario entspricht:
import static org.junit.Assert.*; import org.junit.After; import org.junit.Before; import org.junit.Test; import org.openqa.selenium.By; import org.openqa.selenium.WebDriver; import org.openqa.selenium.firefox.FirefoxDriver; import org.openqa.selenium.support.ui.Select; /** * class description */ public class HandlingDropDown { WebDriver driver; /** * Set up browser settings and open the application */ @Before public void setUp() { driver=new FirefoxDriver(); // Opened the application driver.get('file:///F:/Work/Blogs/testingstuff/DemoWebAlert.html'); driver.manage().window().maximize(); } /** * Test to select the dropdown values * @throws InterruptedException */ @Test public void testSelectFunctionality() throws InterruptedException { // Go to google driver.findElement(By.linkText('Google')).click(); // navigate back to previous webpage driver.navigate().back(); Thread.sleep(5000); // select the first operator using 'select by value' Select selectByValue = new Select(driver.findElement(By.id('SelectID_One'))); selectByValue.selectByValue('greenvalue'); Thread.sleep(5000); // select the second dropdown using 'select by visible text' Select selectByVisibleText = new Select (driver.findElement(By.id('SelectID_Two'))); selectByVisibleText.selectByVisibleText('Lime'); Thread.sleep(5000); // select the third dropdown using 'select by index' Select selectByIndex = new Select(driver.findElement(By.id('SelectID_Three'))); selectByIndex.selectByIndex(2); Thread.sleep(5000); } /** * Tear down the setup after test completes */ @After public void tearDown() { driver.quit(); } }
Code-exemplarische Vorgehensweise
Anweisungen importieren
- importieren org. openqa.selenium.support.ui.Select - Importieren Sie dieses Paket vor der Skripterstellung. Das Paket verweist auf die Select-Klasse, die für die Dropdown-Liste erforderlich ist.
Objektinstanziierung für Select-Klasse
Select selectByValue = new Select (driver.findElement (By.id ('SelectID_One')));
Wir erstellen eine Referenzvariable für die Select-Klasse und instanziieren sie mit der Select-Klasse und dem Bezeichner für das Dropdown-Menü.
Der Bezeichner oder der Locator-Wert für das Dropdown-Menü kann mithilfe der in den ersten Tutorials beschriebenen Techniken ermittelt werden (mithilfe von Selenium IDE und Firebug).
Beachten Sie, dass die Kennung für ein Dropdown wie folgt zu finden ist:
Schritt 1:: Die meisten oder fast alle Dropdown-Elemente sind im Tag definiert und haben mehrere Werte (Werte, die in das Dropdown-Menü festgelegt werden können), die unter den Tags definiert sind.
Einstellen des Wertes in der Dropdown-Liste mit selectByValue () Methode
selectByValue.selectByValue ('greenvalue');
Im obigen Java-Befehl wählen wir den Wert 'grün' in der Dropdown-Liste mit der selectByValue () Methode und Parametrierung mit dem im value-Attribut vorhandenen Text.
Festlegen des Werts in der Dropdown-Liste mithilfe der Methode selectByVisibleText ()
selectByValue.selectByVisibleText ('Lime');
Im obigen Java-Befehl wählen wir den Wert 'Lime' in der Dropdown-Liste mit der selectByVisibleText () Methode und Parametrierung mit dem auf der Benutzeroberfläche vorhandenen Text oder dem zwischen den öffnenden und schließenden Tags vorhandenen Text.
Einstellen des Wertes in der Dropdown-Liste mit selectByIndex () Methode
selectByValue.selectByIndex ('2');
Im obigen Java-Befehl wählen wir den dritten Wert in der Dropdown-Liste mit dem aus selectByIndex () Methode und Parametrierung mit dem Indexwert des Elements, das in der Dropdown-Liste ausgewählt werden soll.
Beachten Sie, dass der Indexwert mit „0“ beginnt.
Fazit
In diesem Tutorial haben wir versucht, Sie mit der Select-Klasse von WebDriver vertraut zu machen, mit der auf der Webseite vorhandene Dropdown-Elemente verarbeitet werden. Wir haben Sie auch über die Methoden informiert, mit denen der Wert in der Dropdown-Liste ausgefüllt werden kann.
Hier ist die Artikelzusammenfassung:
- Die Select-Klasse von WebDriver wird verwendet, um die auf einer Webseite vorhandenen Dropdown-Elemente zu verarbeiten.
- Vor dem eigentlichen Scripting müssen wir ein Paket importieren, um ein WebDriver-Skript erstellen zu können, mit dem ein Dropdown-Menü verarbeitet und die Select-Klasse zugänglich gemacht werden kann.
- importieren org. openqa.selenium.support.ui.Select;
- Wir erstellen eine Referenzvariable für die Select-Klasse und instanziieren sie mit der Select-Klasse und dem Bezeichner für das Dropdown-Menü.
- Wählen selectByValue = new Select (driver.findElement (By.id ('SelectID_One')));
- Der Bezeichner oder der Locator-Wert für den Drop kann mithilfe von Selenium IDE und Firebug ermittelt werden.
- Im Idealfall gibt es drei Möglichkeiten, den gewünschten Wert in der Dropdown-Liste unter den aufgelisteten auszuwählen.
- selectByValue ()
- selectByVisibleText ()
- selectByIndex ()
- Der folgende Java-Befehl wird verwendet, um die „grüne“ Farbe in der Dropdown-Liste auszuwählen. Beachten Sie, dass der Wert in der Dropdown-Liste mit der Option ausgewählt wird selectByValue ()
- selectByValue ('grüner Wert');
- Der folgende Java-Befehl wird verwendet, um die Frucht „Limette“ in der Dropdown-Liste auszuwählen. Beachten Sie, dass der Wert in der Dropdown-Liste mit der Option ausgewählt wird selectByVisibleText ()
- selectByVisibleText ('Lime');
- Der folgende Java-Befehl wird verwendet, um den dritten Wert unter allen verfügbaren Optionen auszuwählen, die für die Dropdown-Liste eingetragen sind. Beachten Sie, dass der Wert in der Dropdown-Liste mit der Option ausgewählt wird selectByIndex ()
- selectByIndex ('2');
Nächstes Tutorial Nr. 14 : Im kommenden Tutorial werden wir verschiedene Arten von Befehlen in WebDriver wie diskutieren isSelected (), isEnabled () und isDispalyed () Diese geben einen booleschen Wert für das Vorhandensein eines angegebenen Webelements zurück.
Bleiben Sie bis dahin auf dem Laufenden und automatisieren Sie das Dropdown-Menü mit dem WebDriver-Dienstprogramm 'Klasse auswählen'.
Literatur-Empfehlungen
- So suchen Sie Elemente in Chrome- und IE-Browsern zum Erstellen von Selenium-Skripten - Selenium-Lernprogramm Nr. 7
- Cucumber Selenium Tutorial: Integration von Cucumber Java Selenium WebDriver
- Überprüfen Sie die Sichtbarkeit von Webelementen mithilfe verschiedener Arten von WebDriver-Befehlen - Selenium Tutorial # 14
- Ausführliche Eclipse-Tutorials für Anfänger
- Einführung in Selenium WebDriver - Selenium Tutorial # 8
- Verwendung von CSS Selector zum Identifizieren von Webelementen für Selenium-Skripte - Selenium-Lernprogramm Nr. 6
- Effizientes Selenium-Scripting und Fehlerbehebungsszenarien - Selenium-Lernprogramm Nr. 27
- Debuggen von Selenium-Skripten mit Protokollen (Log4j Tutorial) - Selenium Tutorial # 26