2017-11-12 8 views
1

この要素をクリックするにはどうすればよいですか?C#Selenium - この要素をクリックする方法?

<a class="_eszkz _l9yih" href="#" role="button" aria-disabled="false"> 
<span class="_8scx2 coreSpriteHeartOpen">XYZ</span></a> 

それを動作させるために私の変数に何をしなければなりませんか?

string element = "???" 

driver.FindElement(By.XPath(element)).Click(); 
+0

を使用することができますが、このXPATHを試すことができます - > element = '// a/span [contains(text()、 "XYZ")]' –

+0

@RehanShikkalgar - 動作しません! – Paski7

答えて

1

あなたがクリックする要素を識別するための多くの可能性があります。クリックしたい要素を正確に提供する属性や値を選択し、同じクラス名を持つ他の要素は選択しないでください。

だから、独自のクラス名で

を正しい例を特定する方法を決定する必要がありますか?使用:

By.XPath("//a[@class='_eszkz _l9yih']") 

その子供のクラスでは?使用:

By.XPath("//span[@class='_8scx2 coreSpriteHeartOpen']/..") 

本文の内容は?用途:

By.XPath("//span[contains(., 'XYZ')]") 

あなたはまた、タイプByの変数にXPathを保存し、その代わりに使用することができます。

string element = "//a[@class='_eszkz _l9yih']"; 

あなたは

By element = By.XPath("//a[@class='_eszkz _l9yih']"); 
driver.FindElement(element).Click(); 
+0

driver.FindElement(By.XPath( "span {@class = '_ 8scx2 coreSpriteHeartOpen']"))をクリックします。働いた!ありがとう! – Paski7

+1

問題はない、うれしい – Marcel

関連する問題