如何在Firefox 19中使用Selenium WebDriver进行鼠标悬停?


问题内容

我用过硒2.31。

我已经使用Actions类进行鼠标移动。使用此功能,我将鼠标移到菜单上,并且其子菜单仅出现了几分之一秒,这与旧版本的Firefox不同。

由于此问题,我无法选择使用子菜单,driver.findElement因为它引发了异常“元素无法滚动到视图中”。

有什么解决办法吗?


问题答案:

使用动作对象,您应该首先移动菜单标题,然后移至弹出菜单项并单击它。不要忘记actions.perform()在最后打个电话。这是一些示例Java代码:

Actions actions = new Actions(driver);
WebElement menuHoverLink = driver.findElement(By.linkText("Menu heading"));
actions.moveToElement(menuHoverLink);

WebElement subLink = driver.findElement(By.cssSelector("#headerMenu .subLink"));
actions.moveToElement(subLink);
actions.click();
actions.perform();