Warum benötigen Sie den Befehl Element / s suchen?
Für die Interaktion mit einer Webseite muss ein Benutzer das Webelement suchen. Der Befehl "Element suchen" wird verwendet, um ein (ein) Webelement innerhalb der Webseite eindeutig zu identifizieren. Der Befehl Elemente suchen wird verwendet, um die Liste der Webelemente auf der Webseite eindeutig zu identifizieren. Es gibt mehrere Möglichkeiten, ein Webelement innerhalb der Webseite eindeutig zu identifizieren, z. B. ID, Name, Klassenname, Verknüpfungstext, partieller Verknüpfungstext, Tag-Name und XPATH.
Syntax des FindElement-Befehls:
Der Befehl Selenium Find Element verwendet das By-Objekt als Parameter und gibt ein Objekt der Typliste WebElement in Selenium zurück. Das Objekt kann wiederum mit verschiedenen Locator-Strategien verwendet werden, z. B. Suchelement nach ID Selenium, Name, Klassenname, XPATH usw. Nachfolgend finden Sie die Syntax des Befehls FindElement im Selenium-Webtreiber.
WebElement elementName = driver.findElement (By.LocatorStrategy ("LocatorValue"));
Die Locator-Strategie kann einen der folgenden Werte annehmen.
- ICH WÜRDE
- Selen Element nach Namen finden
- Klassenname
- Verlinke den Namen
- Link Text
- Teilweiser Linktext
- XPATH
Der Locator-Wert ist der eindeutige Wert, mit dem ein Webelement identifiziert werden kann. Es liegt in der Verantwortung von Entwicklern und Testern, sicherzustellen, dass Webelemente anhand bestimmter Eigenschaften wie ID oder Name eindeutig identifizierbar sind.
Beispiel:
WebElement loginLink = driver.findElement (By.linkText ("Login"));
Befehlssyntax von FindElements:
Der Befehl FindElements in Selenium verwendet das Objekt By als Parameter und gibt eine Liste der Webelemente zurück. Es wird eine leere Liste zurückgegeben, wenn mit der angegebenen Locator-Strategie und dem Locator-Wert keine Elemente gefunden wurden. Unten finden Sie die Syntax des Befehls find elements.
ListelementName = driver.findElements (By.LocatorStrategy ("LocatorValue"));
Beispiel:
ListlistOfElements = driver.findElements (By.xpath ("// div"));
Element suchen Vs Elemente suchen
Nachfolgend sind die Hauptunterschiede zwischen den Befehlen find element und find elements aufgeführt.

Element suchen | Elemente finden |
---|---|
Gibt das am häufigsten verwendete Webelement zurück, wenn mehrere Webelemente mit demselben Locator gefunden wurden | Gibt eine Liste von Webelementen zurück |
Löst die Ausnahme NoSuchElementException aus, wenn keine Elemente vorhanden sind, die der Locator-Strategie entsprechen | Gibt eine leere Liste zurück, wenn keine Webelemente vorhanden sind, die der Locator-Strategie entsprechen |
Element von XPath suchen findet nur ein Webelement | Es wird eine Sammlung von Elementen gefunden, die mit der Locator-Strategie übereinstimmen. |
Unzutreffend | Jedes Webelement wird wie ein Array mit einer Zahl ab 0 indiziert |
Beispiel: Verwendung des Befehls "Element suchen"
Die folgende Anwendung wird für Demozwecke verwendet
http://demo.guru99.com/test/ajax.html
Szenario:
1. Öffnen Sie das AUT
2. Suchen Sie das Optionsfeld und klicken Sie darauf
Paket com.sample.stepdefinitions;import org.openqa.selenium.By;import org.openqa.selenium.WebDriver;import org.openqa.selenium.chrome.ChromeDriver;öffentliche Klasse NameDemo {public static void main (String [] args) {// TODO Automatisch generierter MethodenstubSystem.setProperty ("webdriver.chrome.driver", "D: \\ 3rdparty \\ chrome \\ chromedriver.exe");WebDriver-Treiber = neuer ChromeDriver ();driver.manage (). window (). maxim ();driver.get ("http://demo.guru99.com/test/ajax.html");// Finde das Optionsfeld für "Nein" anhand seiner ID und klicke daraufdriver.findElement (By.id ("no")). click ();// Klicken Sie auf Check Buttondriver.findElement (By.id ("buttoncheck")). click ();}}}}
Beispiel: Verwendung des Befehls "Elemente suchen"
Szenario:
1. Öffnen Sie die URL für die zu testende Anwendung
2. Suchen Sie den Text der Optionsfelder und drucken Sie ihn auf die Ausgabekonsole
Paket com.sample.stepdefinitions;import java.util.List;import org.openqa.selenium.By;import org.openqa.selenium.WebDriver;import org.openqa.selenium.WebElement;import org.openqa.selenium.chrome.ChromeDriver;öffentliche Klasse NameDemo {public static void main (String [] args) {System.setProperty ("webdriver.chrome.driver", "X: //chromedriver.exe");WebDriver-Treiber = neuer ChromeDriver ();driver.get ("http://demo.guru99.com/test/ajax.html");Listelements = driver.findElements (By.name ("name"));System.out.println ("Anzahl der Elemente: + elements.size ());für (int i = 0; i Zusammenfassung:
- Der Befehl "Element suchen" gibt das Webelement zurück, das dem ersten Element auf der Webseite entspricht.
- Der Befehl Elemente suchen gibt eine Liste von Webelementen zurück, die den Kriterien entsprechen.
- Element nach XPath im Selenium-Befehl suchen löst NoSuchElementException aus, wenn das Element nicht gefunden wird, das den Kriterien entspricht.
- Der Befehl "Elemente suchen" gibt eine leere Liste in Selen zurück, wenn keine Elemente vorhanden sind, die den Kriterien entsprechen