2016-09-02 6 views
1

Mein Selenium-Web-Treiber klickt nicht auf diesen Baumknoten. Ich weiß nicht genau, was wir es sagen Baumknoten oder etwas anderes, so ist dies Bild und ich hob das Element hervor.Warum klickt mein Selenium-Webtreiber nicht auf Element, das durch ID identifiziert wird?

enter image description here

Dieser Pfeil nach rechts Teil, auf das ich

Und dies ist mein Code klicken mag:

//wait.until(ExpectedConditions.elementToBeClickable(By.id("iconDiv"))); 
WebElement taskdropElementid = driver.findElement(By.id("iconDiv")); 
System.out.println(taskdropElementid.getAttribute("class")); 
if(taskdropElementid.getAttribute("class").equals("RightArrow")) 
    taskdropElementid.click(); 

Druck Anweisung gibt mir Ausgabe Dropdown-Menü. Ich denke, es sollte RightArrow geben und wenn ich Warteteil abnehme, dann ist es kontinuierlich warten auf das Element anklickbar sein.

Was mache ich falsch?

Antwort

1

Druck Anweisung gibt mir Ausgabe Dropdown

Das heißt, es sind mehrere Elemente mit der gleichen ID iconDiv und leider sind Sie ein anderes Element Ortung statt, welche dropdown Klasse Namen hat.

Wenn Sie Element mit Klassennamen RightArrow suchen möchten, sollten Sie versuchen, By.cssSelector() verwenden es zu lokalisieren eindeutig wie folgt: -

WebElement taskdropElementid = driver.findElement(By.cssSelector("div#iconDiv.RightArrow")); 
taskdropElementid.click(); 
+1

Ja danke. Es funktioniert für mich –

+0

@kamal kumar Sie sollten [diese Antwort als richtige Antwort markieren] (http://meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-work), wenn es geholfen hat. .. :) –

+0

Ja, ich habe die Antwort aufgewertet. –

Verwandte Themen