在火狐中运行Selenium WebDriver测试不起作用



我正在尝试单击何时页面上的子菜单项。我使用以下代码来执行该操作。

WebElement mainMenu = driver.findElement(By.xpath(".//*[@class='main-menu']"))
WebElement subMenu = driver.findElement(By.xpath(".//*[@class='sub-menu-item2']"))
mainMenu.click();
actions.moveToElement(mainMenu).build().perform();
subMenu.click();

此代码在使用 Chrome 浏览器时工作正常,但不适用于 Firefox。

通过阅读几篇文章,我了解到 geckodriver 尚未实现操作"https://github.com/mozilla/geckodriver/issues/233"这证明我的代码在运行我的测试时不起作用是 Firefox。

我没有使用Actions,而是使用了JavaScriptExecutor,它对我来说工作得很好,这是我使用的命令。

((JavascriptExecutor) driver).executeScript("arguments[0].scrollIntoView(true);", mainMenu);
subMenu.click(); 

这在Chrome和Firefox浏览器上都非常有效。

最新更新