2016-05-12 17 views
0

auswählen Ich habe den folgenden Code, um eine Bewertung für einen veröffentlichten Inhalt auszuwählen. Aber wenn ich die click() -Methode benutze, wählt sie den num1start, selbst wenn ich dem xpath den num3-Stern gebe. Ich habe versucht mit Aktionen und immer noch kein Glück. Verwenden von Mac-Maschine, Selen WebDriver, Java, TestNGKann die Bewertung für einen Inhalt nicht mit Selenium Webdriver

enter image description here

<ul class="star-rating"> 
    <li onmouseout="showPreset()" onmouseover="hidePreset()"> 
     <a class="num1-stars" title="Rate this 1 stars out of 5" onclick="return submitNumRating("1");" href="#"></a> 
    </li> 
    <li onmouseout="showPreset()" onmouseover="hidePreset()"> 
     <a class="num2-stars" title="Rate this 2 stars out of 5" onclick="return submitNumRating("2");" href="#"></a> 
    </li> 
    <li onmouseout="showPreset()" onmouseover="hidePreset()"> 
     <a class="num3-stars" title="Rate this 3 stars out of 5" onclick="return submitNumRating("3");" href="#"></a> 
    </li> 
    <li onmouseout="showPreset()" onmouseover="hidePreset()"> 
     <a class="num4-stars" title="Rate this 4 stars out of 5" onclick="return submitNumRating("4");" href="#"></a> 

Im Folgenden sind der Code habe ich versucht 1-Klick() -Methode - wählt den 1. Stern

driver().findElement(By.xpath("//ul[@class=\"star-rating\"]/li/a[@class=\"num3-stars\"]")).click(); 

2- Verwenden von Aktionen - Schwelle wählt den ersten Stern aus

Actions actions = new Actions(driver); 
WebElement star = getDriver().findElement(By.xpath("//ul[@class=\"star-rating\"]/li/a[@class=\"num3-stars\"]")); 
actions.moveToElement(star); 
actions.click().perform(); 

Was soll ich tun, um das Sternelement richtig auszuwählen?

Antwort

0

Versuchen Sie den folgenden Code und lassen Sie es mich wissen.

driver.findElement(By.xpath("//ul[@class='star-rating']/li[3]/a")).click(); 
+0

wählt er immer noch den 1. Stern :( – Sharmila

+0

Ok können Sie mir die Webseite senden Sie versuchen? Wenn es ein öffentliches senden Sie mir einfach den Link –

+0

Es ist eine Web-Seite in meinem Projekt ist und ich kann es nicht senden Da es Benutzeranmeldeinformationen erfordert, verwende ich JavascriptExecutor, um auf das Element zu klicken, und das scheint gut zu funktionieren – Sharmila