2015-12-06 3 views

Antwort

8

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.

enter image description here

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(); 
+0

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

2

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(); 
0

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()); 
Verwandte Themen