2016-08-18 7 views
0

div要素の下にあるspanボタンをクリックすることは可能ですか?入力のIDを使用してテストを安定させたい。親(ID付き)のIDでスパンボタンをクリックする -

HTML:

demo

あなたが右に3つのドットボタンを見ることができるように、それは私がクリックしたいボタンがある:それは、画面上でどのように見えるか

<div class="idit-go"> 
<input id="[email protected]" class="GoLong align-left idit-go-text" type="text" value="" title="Validation Rule" tabindex="257" name="unknown" ignoredisableenableaction="true" helptextinfo="" disabled=""> 
<div class="idit-go-buttons"> 
<span id="[email protected]" class="idit-go-clear" title="Clear" tabindex="259" onclick="clearField('[email protected]');clearField('[email protected]');;"> 
<span class="fa-stack idit-go-button" value="" title="" tabindex="258" onclick="newPerformSubAction('selectRule',true);"> 
<i class="fa fa-stack-1x fa-square"></i> 
<i class="fa fa-stack-1x fa-ellipsis-h"></i> 
</span> 
</div> 

。前もって感謝します。

答えて

1

この場合、id属性を持つspanを特定してから、following-sibling(例では同じレベルにあるようです)を使用することができます。 "span[id='[email protected]'] + span[class='fa-stack idit-go-button']"

+0

のベスト

element = driver.findElement(By.xpath("//div[@class='idit-go']//span[@class='fa-stack idit-go-button']")); element.click(); 

(スパンID = "IDITForm @ checkRuleVOGoClearButtonClear" を持つ要素を探し、クリックする)

idがあることを"X"ボタンをクリックするには、3ドットボタン(2番目のスパン)をクリックしたいと思います。 –

+0

'driver.findElement(By.xpath(" // * [@ id = 'IDITForm @ requestedAmountVOGoClearButtonClear']/following-sibling: :span "))click();'私のために働いています、10x –

+0

"X" bを使わずに3 dotsボタンをクリックするにはどうすればいいですか?ユートンは兄弟のスパンに従う? (一部の画面にはクリアボタンがない場合があります)。 –

1

! :) ここでは、Zvikaを行く:!運の男:)

+0

は動作しません - メソッドは 'org.openqa.selenium.InvalidSelectorException'例外をスローしました。 –

+0

By.cssSelector()関数を使用していますか?私は、xpathロケータではなくcssロケータを与えました。ブラウザのコンソールで試してみて、最初に確認してください。 – Grasshopper

+0

私はもう一度それを試して、それは今働いています、ありがとう。さらなるケースでは、CSSの代わりに別の方法がありますか?任意のxpath相対? xpathの –

0

さて、誰が、私が見ることができるものからこれを得たので、私は同様に行くことができます - CSSを使用して

driver.findElement(By.xpath(".//[@id='[email protected]']/following-sibling::span")); 
+0

ちょっと、あなたの答えは、 "X"ボタンをクリックして、私は3つのドットをクリックしようとしています。 10x –

+0

こんにちはZvika、それはあなたが必要なボタンを見つけるためにスパン/ IDを変更する必要があるのと同じテクニックです。私は私の答えを編集しました、今はどうですか? –

関連する問題