2016-05-24 3 views
1

Bitte beachten Sie den Code unten istWas ist der Unterschied zwischen .getClass() und .getAttribute („Klasse“) in Selen

`<div class="datepicker dropdown-menu" style="display: block; top: 301px; left: 308px;"> 
<div class="datepicker-days" style="display: block;"> 
<div class="datepicker-months" style="display: none;"> 
<div class="datepicker-years" style="display: none;"> 
</div>` 

Ich versuche, die Klassennamen der Divs im Inneren Div mit classname (datepicker bekommen . Dropdown-Menü "), aber es funktioniert mit wdriver.getAttribute("class").toString(); und nicht mit wdriver.getclass().toString(); Kann jemand mir erklären, was der Unterschied ist

+0

Zeigen Sie uns Ihren Code für eine bessere Erklärung –

Antwort

0

Es Menge diffrence zwischen getClass() und getAttribute ("class")

Lassen Sie mich Ihnen mit Beispiel zeigen.

Vor allem

getClass() - Rückgabetyp ist webelement

getAttribute ("class") - Rückgabetyp ist String

Für zB

WebDriver driver = new FirefoxDriver(); 
    driver.manage().window().maximize(); 

    driver.get("https://accounts.google.com/ServiceLogin?service=mail&passive=true&rm=false&continue=https://mail.google.com/mail/&ss=1&scc=1&ltmpl=default&ltmplcache=2&emr=1&osid=1#identifier"); 
    Thread.sleep(4000L); 
    WebElement a = driver.findElement(By.xpath(".//*[@id='next']")); 
    String b = a.getAttribute("class"); 
    System.out.println(b); 
    a.getClass(); 
    System.out.println(a); 

HTML-Code

<input id="next" class="rc-button rc-button-submit" type="submit" value="Next" name="signIn"/> 

b wird den Wert der Attributklasse "rc-button rc-button-submit" ausgeben.

Während getClass() wird den Xpath davon drucken. i./**[@id='next ']

Ich hoffe, Sie können jetzt erzählen, warum Sie nicht von getClass() erhalten haben, da der Rückgabetyp anders ist. Fühlen Sie sich frei, nach einer Abfrage zu fragen. Happy Learning :-)

+0

Ja, habe den Unterschied. Danke –

+0

@Gourav: Wenn Sie meine Antwort akzeptieren, kreuzen Sie einfach die Antwort oder upvote es, die auf der linken Seite ist, wo meine Antwort beginnt. Glücklich lernen :-) –

0

getClass(): Returns the runtime class of this(given element) Object. The returned Class object is the object that is locked by static synchronized methods of the represented class.

getAttribute: Get the value of a the given attribute of the element.

0

Mai werden Sie wie gemeint:.. Webelement.getAttribute ("class") toString() und webelement.getclass() toString() auf.

In diesem Fall erhält man zuerst ein Attribut des Webelements, während das zweite die Klasse des gegebenen Webelements erhält.

Verwandte Themen