2017-06-07 9 views
0

されるスパンのためのHTML:スパンクラスロケータは表示/クリックできない - セレン

<td class="header-logout-btn"> 
<a href="logout.htm" class="btn switch-btn"> 
    <i class="fa fa-times"></i><span class="hidden-xs">Home</span> 
</a> 
</td> 

をしてみました:

driver.findElement(By.linkText("HOME")); 
driver.findElement(By.xpath("//div[@class="header-logout-btn"]/span[@class="hidden-xs"])); 
driver.findElement(By.xpath("//span")); 
driver.findElement(By.className("hidden-xs")); 
+0

クラス名自体は述べているように、それは隠されているので、我々はカントのような

使用セレクタそれと相互作用する。 –

+1

の前に親要素にマウスを置いて表示する必要があります。-driver.findElement(By.xpath( "// span [contains(text()、 'Home')]")) – Ankur

答えて

0

次の解決方法試してみてください。

のXpath = //*[contains(text(),'Home')]

お手伝いしますように。

0

通常、ログアウトボタンはサブメニューになるか、メインメニューをクリックまたはマウスオーバーすると表示されます。通常、メインメニューはプロフィールアイコンです。このログアウトボタンは、メイン/プロファイルボタンをクリックした後にのみ表示されるものとします。これは、ボタンが隠されているか、クリックできない理由である可能性があります。ソリューションは以下のとおりです。 1.メイン/プロファイルメニューを最初にクリックまたはマウスオーバーし、ログアウトボタンをクリックします。 2.隠しボタンをクリックします。下記のようにJavaScript Executorを試してみてください。

Webelement eleLogout=driver.find element(By.class name("switch-btn")); 
JavaScriptExecutor js=(JavaScriptExecutor)driver; 
js.executeScript("arguments [0].click()",eleLogout);` 
0

このリンクをクリックしてください。

のxpath: //a[contains(@href, 'logout')]または
//*[@class='header-logout-btn']/a[contains(@href, 'logout')]

CSS:
a[href*=logout]または
.header-logout-btn a[href*=logout]

関連する問題