2016-04-28 7 views
0

Ich habe Probleme mit dem Klicken auf einen linken Menüpunkt (Menüpunkt Name auf der Seite wird als "Mailbox Send" angezeigt). HTML sieht wie folgt aus.Wie auf den linken Menüeintrag klicken

<tr> 
    <td></td> 
    <td width="150" align="left" class="navcolor" height="22"><b><a class="WhiteNavLink" href="http://ttgllpgisapp02:5000/mailbox/jsp/MBISend.jsp?securetoken=1461807919764oodj56n5jdvg1rekn7iz154io" target="view_body">&nbsp;&nbsp;Mailbox Send&nbsp;&nbsp;</a></b></td> 
</tr> 

Ich habe versucht, mithilfe von XPath, aber es nicht funktioniert hat, sieht XPath wie:

/html/body/form/table/tbody/tr/td/table[3]/tbody/tr[4]/td[2]/b/a 

Bitte helfen Sie mir mit etwas Ahnung, wie auf das Element zu klicken.

+4

Was auf der Erde Du fragst? – OldProgrammer

Antwort

1

Angenommen, Sie verwenden , würde ich tatsächlich einen "per Link Text" Locator hier verwenden.

Beispiel in Java:

driver.findElement(By.partialLinkText("Mailbox Send")).click(); 

Was die XPath, können Sie es von Text, aber zuerst müssen Sie normalisieren Raum:

//a[normalize-space(.) = "Mailbox Send"] 
+0

Danke, Alecxe, ja, ich benutze Selen mit Java. Ich habe versucht, Ihre oben genannten Beispiele, aber immer noch Fehlermeldung "Element kann nicht gefunden werden" – Pinakee

+0

@Pinakee in Ordnung, nehmen wir an, dies ist ein Timing-Problem. Könnten Sie versuchen, ['WebDriverWait'] (http://www.seleniumhq.org/docs/04_webdriver_advanced.jsp) zu verwenden und auf das Element zu warten, bevor Sie darauf klicken? Vielen Dank. – alecxe

+0

Danke, Alecxe, Ich bekomme immer noch keinen Elementfehler. Unter dem Code versucht. Hier wartet es auf 10 Sekunden, zu diesem Zeitpunkt lädt die Seite erfolgreich und kann nicht geklickt werden. WebDriverWait wait = neuer WebDriverWait (Treiber, 10); WebElement-Element = wait.until (ExpectedConditions.elementToBeClickable (By.xpath ("// a [Normalize-Leerzeichen (.) = 'Mailbox Send']"))); element.click(); – Pinakee

Verwandte Themen