Webdriver无法单击鼠标悬停在Java中的FireFox按钮上

时间:2013-01-08 21:58:59

标签: java mouseover selenium-webdriver

我正在尝试将鼠标悬停在“修改”按钮上。但是,当我使用mouseOverElement时,我不断收到“元素当前不可见,因此可能无法与”进行交互。
有关如何使其工作的任何想法?谢谢你

< div class =“editbox”>
< H2>标题< / H2>
< UL>
< li>
< small class =“editlinks”>
< a class =“edit”href =“#”>编辑< / a>
< /小>
<强>内容
< /立GT;
< / UL>
< / DIV>

这是我的代码:

方法1:

WebElement textArea = driver.findElement(By.cssSelector(“div.editbox ul li”));
WebElement button = driver.findElement(By.cssSelector(“div.editbox ul li small.editlinks a.edit”));
Actions builder = new Actions(驱动程序);
builder.moveToElement(TEXTAREA).build()执行();
timer.wait(5000);
driver.findElement(By.cssSelector(“div.editbox ul li small.editlinks a.edit”))。clik();

方法2:

动作构建器=新动作(驱动程序);
builder.moveToElement(TEXTAREA);
timer.wait(5000);
builder.click(按钮);
builder.build()执行();

1 个答案:

答案 0 :(得分:0)

我正在使用以下代码将鼠标悬停在元素上:

if (element instanceof Locatable) {
    Locatable hoverItem = (Locatable) element;
    hoverItem.getLocationOnScreenOnceScrolledIntoView();
    Mouse mouse = ((HasInputDevices) webDriver).getMouse(); 
    mouse.mouseMove(hoverItem.getCoordinates());
}

尝试它是否有效。

我不确定您是否可以点击li元素,因为它是不可见的。你不应该将链接悬停(a标签)吗?