不能使用最新的3.0 selenium和FF中的坐标点击按钮。
我指定启动FF48浏览器的部分代码,打开登录页面并尝试点击登录按钮。使用坐标单击按钮在Chrome中正常工作但在FF中失败。
Browser - FF48 (may be present with previous FF as well)
Selenium - Latest 3.0 beta jar
Works fine in latest Chrome.
// Launch browser
DesiredCapabilities capabilities = DesiredCapabilities.firefox();
FirefoxProfile profile = new FirefoxProfile();
capabilities.setCapability(FirefoxDriver.PROFILE, profile);
capabilities.setCapability("marionette", true);
webDriver = new FirefoxDriver(capabilities);
// Open login page and click to Sign button
WebElement we = null;
we = driver.findElement(By.cssSelector("css=input.ZLoginButton[value='Sign In']"));
Actions builder = new Actions(webDriver());
Action action = builder.moveToElement(we, 5, 5).click(we).build();
action.perform();
我们元素返回正常但移动到元素在FF失败,相同的代码在Chrome中正常工作。我不认为这个问题特别针对FF48而且可能存在于所有FF但有趣的事情,就移动元素和坐标而言,最新的selenium 3.0 jar中的问题是什么?
即使它可以直接使用:
we.click();
但我需要使用坐标单击元素,因为在我的Ajax应用程序中,某些元素单击仅适用于以下内容:
Action action = builder.moveToElement(we, 5, 5).click(we).build();
action.perform();
有没有人对最近的问题有所了解?我确信这在FF之前工作正常,并且已经在chrome中工作正常。
答案 0 :(得分:2)
关于不与geckodriver合作的动作类有一个未解决的问题。我们需要等待修复。记录在selenium中的问题 - > https://github.com/SeleniumHQ/selenium/issues/2285
希望这有帮助。
答案 1 :(得分:0)
一周后我禁用牵线木偶(java):
capability.setCapability("marionette", false);
修复一切。不要问我为什么。