Selenium 3.x double click not working

人盡茶涼 提交于 2019-12-12 05:48:35

问题


Firefox Version: 52.0.2 (32 bit)
Platform: Windows 7 - 64 bit
Selenium Webdriver Version: 3.4.0 (Java bindings)
GeckoDriver: 0.16.0
Problem Statement:
Selenium 3.x is unable to perform double click operation. Test Code:

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();
    }
}

EDIT: Manual Steps

  1. Navigate to EXTJs link
  2. Login with any password.
  3. On the right hand side you will find a table of tickets.
  4. If you double click on any one ticket that then it will open that ticket.

回答1:


To overcome problems with doubleclicking in Selenium try Alternative workaround Source

simplified to this:

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


来源:https://stackoverflow.com/questions/44356348/selenium-3-x-double-click-not-working

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!