span类定位器不可见/可点击 - selenium

时间:2017-06-07 11:55:51

标签: java html selenium selenium-webdriver

以下是span的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"));

3 个答案:

答案 0 :(得分:0)

尝试以下解决方案:

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

希望它会对你有所帮助。

答案 1 :(得分:0)

通常,注销按钮将是子菜单,或者仅当您在主菜单上单击或鼠标悬停时,它才会显示,主菜单通常是个人资料图标。我假设只有在单击主/配置文件按钮后才能看到此注销按​​钮。这可能是按钮被隐藏或无法点击的原因。解决方案如下。 1.首先单击或鼠标悬停在主/配置文件菜单上,然后单击注销按钮。 2.你还想点击隐藏按钮。您可以尝试使用下面给出的JavaScript执行器。

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

答案 2 :(得分:0)

尝试点击链接。

使用选择器,如:

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

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