Ich habe die meisten der Element-Locator während des Tests mit Selen, aber sehr selten häufig 'TagName' Locator verwendet. Bitte geben und Beispiel.Wann und wie kann ich Element nach Tagname mit Selen-Webdriver suchen? Bitte erläutern Sie mit einem Beispiel
Antwort
Nun vorausgesetzt, Software Web-Element haben keine ID oder Klassenname dann, wie dieses Element in Selen WebDriver zu finden? Antwort ist, es gibt viele Alternativen von Selen WebDriver Element Locator und einer davon ist das Lokalisieren von Element nach Tag-Name.
Positionselement nach Tag suchen Der Name ist nicht sehr beliebt, da wir in den meisten Fällen andere Alternativen zu Element-Locators haben. Aber wenn es keine Alternative gibt, können Sie den DOM-Tag-Namen des Elements verwenden, um dieses Element im Webdriver zu finden.
Hier können Sie den Tag-Namen als Locator wählen wie:
//Locating element by tagName and store its text in variable dropdown.
String dropdown = driver.findElement(By.tagName("select")).getText();
wir den tatsächlichen Namen des Tags wie für Anker verwenden und für Tisch und Eingang für. Dies hilft, alle Elemente mit einem bestimmten Tag-Namen zu erhalten. Beispiel: erstes Element des gegebenen Eingangs
var dialog = driver.FindElement(By.ClassName("ladialog"));
var save = dialog.FindElements(By.TagName("input"))[0];
save.Click();
Auch wichtig zu wählen, die tagName
Lokalisierungsstrategie verwendet werden kann, um alle Links in einer Webseite zu erhalten oder zu holen und ausdrucken zu trösten. Versuchen Sie dies:
//GET ALL LINKS IN A WEBPAGE
List<WebElement> allLinks = driver.findElements(By.tagName("a"));
System.out.println("Links count is: "+allLinks.size());
for(WebElement link : allLinks)
System.out.println(link.getText());
Verwenden Sie es zu finden, ein "IFRAME" oder vielleicht "A" -Tags, um alle Links auf der Seite zu bekommen, sind eher verbreitet zu sein. – JeffC