2016-05-12 12 views
0

公開されたコンテンツのレーティングを選択するコードは次のとおりです。しかし、私がclick()メソッドを使うと、xpathにnum3の星を選択してもnum1startが選択されます。私はアクションを使ってみましたが、まだ運がありません。マックマシン、セレンwebdriverを、ジャワ、TestNGの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> 

を使用 は私が 1クリック()メソッドを試してみましたコードです -

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

2 - 第一スターを選択しますアクションを使用する - シルは1番目の星を選択します

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

スター要素を正しく選択するにはどうすればよいですか?

答えて

0

下記のコードを試してみてください。

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

それはまだあなたはそれが公共のものである場合だけ – Sharmila

+0

[OK]を選択し、とにかに私はJavascriptExecutorを使用して要素をクリックし、それはうまくいくようです –

+0

そのに私に私のプロジェクトでWebページをリンクを送信し、私はそれを送信カント?私にあなたがしようとしているWebページを送信することができます第一スター:( – Sharmila

関連する問題