【问题标题】:NoSuchElementException on performing Mousehover action in selenium在硒中执行鼠标悬停动作时出现 NoSuchElementException
【发布时间】:2016-05-06 10:14:19
【问题描述】:

我有一个网页,我试图在其中执行鼠标悬停。有一个名为“实体记录”的元素,如果您将鼠标悬停在该元素上,它会显示一个菜单。在该菜单中,我需要单击一个名为“创建新记录”的元素。

我尝试了 3 组不同的代码,但它对我不起作用..

第一个:

 WebElement el = driver.findElement(By.xpath("\\...."));
    action.moveToElement(el).build().perform();
    Actions builder = new Actions(driver);
    builder.moveToElement(driver.findElement(By.cssSelector("..."))).click().build().perform();

第二个:

WebElement entityrecordsmenu = driver.findElement(By.cssSelector("..."));
    Actions builder = new Actions(driver);
    builder.moveToElement(entityrecordsmenu).build().perform();
    WebElement createnewrecord = driver.findElement(By.cssSelector("..."));
    createnewrecord.click();

第三个:

Actions action2 = new Actions(driver);
    WebElement ele = driver.findElement(By.xpath("...));
    action2.moveToElement(ele).build().perform();
    Actions build2 = new Actions(driver);
    build2.moveToElement(driver.findElement(By.xpath("..."))).click().build().perform();

第一个和第二个代码在鼠标悬停时做得很好,但它没有点击菜单元素。谁能建议我这样做的正确方法?

【问题讨论】:

    标签: selenium selenium-webdriver


    【解决方案1】:

    鼠标悬停后,尝试等待显示该元素,然后单击。

     WebElement entityrecordsmenu = driver.findElement(By.cssSelector("..."));
        Actions builder = new Actions(driver);
        builder.moveToElement(entityrecordsmenu).build().perform();
        //provide wait here to display dropdown
        driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
    
        //some time implicity wait may fails then use thread.sleep
        //Thread.sleep(3000);
        WebElement createnewrecord = driver.findElement(By.cssSelector("..."));
        createnewrecord.click();
    
        //if still above once does  not work you can try
        Actions builder1 = new Actions(driver);
        builder1.moveToElement(entityrecordsmenu).click(driver.findElement(By.cssSelector("..."))).build().perform();
    

    谢谢你, 壁画

    【讨论】:

      猜你喜欢
      • 2023-03-07
      • 1970-01-01
      • 1970-01-01
      • 2012-05-04
      • 2020-11-27
      • 2017-09-05
      • 2011-05-26
      • 2019-11-01
      • 1970-01-01
      相关资源
      最近更新 更多