Java Selenium 3.x双击不工作

Java Selenium 3.x双击不工作,java,selenium,selenium-webdriver,geckodriver,Java,Selenium,Selenium Webdriver,Geckodriver,Firefox版本:52.0.2(32位) 平台:Windows 7-64位 Selenium Webdriver版本:3.4.0(Java绑定) 壁虎河:0.16.0 问题陈述: Selenium 3.x无法执行双击操作。 测试代码: public class GeckoTest { public static void main(String[] args) throws IOException { System.setProperty("webdriver.geck

Firefox版本:52.0.2(32位)
平台:Windows 7-64位
Selenium Webdriver版本:3.4.0(Java绑定)
壁虎河:0.16.0
问题陈述:
Selenium 3.x无法执行双击操作。 测试代码:

public class GeckoTest {
    public static void main(String[] args) throws IOException {
        System.setProperty("webdriver.gecko.driver","I:\\jetbrainsworkspace\\src\\test\\resources\\geckodriver.exe");
        FirefoxBinary binary = new FirefoxBinary(new File("D:\\installations\\browsers\\ff\\52.0.2_32\\firefox.exe"));
        FirefoxOptions options = new FirefoxOptions();
        options.setBinary(binary);
        options.setLogLevel(Level.ALL);
        WebDriver browser = new FirefoxDriver(options);
        browser.manage().timeouts().pageLoadTimeout(10, TimeUnit.SECONDS);
        browser.manage().timeouts().implicitlyWait(10,TimeUnit.SECONDS);
        browser.get("https://examples.sencha.com/extjs/6.0.1/examples/classic/ticket-app/index.html");
        WebDriverWait wait = new WebDriverWait(browser,20,3000);
        wait.until(ExpectedConditions.visibilityOfElementLocated(By.name("password"))).sendKeys("sometext");
        wait.until(ExpectedConditions.visibilityOfElementLocated(By.xpath(".//span[text()='Login']"))).click();
        WebElement ele = wait.until(ExpectedConditions.visibilityOfElementLocated(By.xpath(".//div[text()='Fiant adipiscing clari nunc molestie per placerat vero insitam; ullamcorper saepius etiam claritatem quod.']")));
        Actions builder = new Actions(browser);
        builder.doubleClick(ele).build().perform();
        browser.close();
    }
}
编辑:手动步骤

  • 导航到
  • 使用任何密码登录
  • 在右边你会看到一张票桌
  • 如果您双击任何一张票证,它将打开该票证

  • 克服Selenium中双击的问题

    简化为:

    ((JavascriptExecutor) driver).executeScript("document.getElementById('map_container').dispatchEvent(new Event('dblclick'));"); 
    

    克服Selenium中双击的问题

    简化为:

    ((JavascriptExecutor) driver).executeScript("document.getElementById('map_container').dispatchEvent(new Event('dblclick'));"); 
    

    你能考虑用手动测试来更新我们吗?​ 步骤请?您的元素是否支持双击?或者你想点击选择/突出文本吗?这似乎是一个已知的问题,需要进一步调查的硒贡献者组:可能的副本,你可以考虑更新我们的手动测试吗?​ 步骤请?您的元素是否支持双击?或者您正在尝试单击以选择/突出显示文本?这似乎是一个已知问题,需要selenium contributors group进行进一步调查:可能存在重复的文本