如何在网页上使用Selenium WebDriver和java验证工具提示文本

时间:2014-02-07 10:37:22

标签: java selenium-webdriver tooltip

我想在我的网页的NEW按钮上验证工具提示文字。鼠标悬停前新按钮的html后端代码如下:

<button id="newBtn" class="checkForSave" title="Create a new Configuration Package" type="button">New</button>

在按钮上鼠标悬停后,按钮的html后端代码如下:

<button id="newBtn" class="checkForSave" title="" type="button"> area-describdby="ui-tooltip-27"New</button>

现在我想验证工具提示文本“创建一个新的配置包”应该在鼠标悬停在新按钮之后。

我可以通过以下代码在鼠标悬停之前将文本存储在字符串中:

WebElement NewButton = driver.findElement(By.id("newBtn"));
String Tooltip = NewButton.getAttribute("title");
System.out.println(Tooltip);

其打印文本“创建新的配置包”

但是当我将鼠标移到NEW按钮并编写代码时

Actions ActionChains = new Actions(driver);
WebElement NewButton = driver.findElement(By.id("newBtn"));
actions.moveToElement(NewButton).build().perform();
ActionChains.clickAndHold(NewButton).perform();
String Tooltip = NewButton.getAttribute("title");
System.out.println(Tooltip);

我没有找到任何我得到空白消息的东西因为在鼠标悬停之后标题是“”在新按钮的后端html代码中。“

我该怎么做?

3 个答案:

答案 0 :(得分:0)

注释掉ActionChains.clickAndHold(NewButton).perform();

答案 1 :(得分:0)

import org.openqa.selenium.interactions.HasInputDevices;
import org.openqa.selenium.interactions.Mouse;
import org.openqa.selenium.internal.Locatable;

Locatable hoverItem = (Locatable) webEleObj;
Mouse mouse = ((HasInputDevices) getDriver()).getMouse();
mouse.mouseMove(hoverItem.getCoordinates());

答案 2 :(得分:0)

尝试使用xpath查找元素!它可以帮助你像我尝试用“id”&amp;它不起作用,而它使用xpath而不是!!