【问题标题】:WebDriverException Element is not clickable in Selenium [duplicate]WebDriverException元素在Selenium中不可点击[复制]
【发布时间】:2019-03-19 13:24:24
【问题描述】:

这是错误信息:

org.openqa.selenium.WebDriverException: unknown error: Element <div class="col-md-2 col-sm-2 hidden-xs days" id="lblday3">...</div> is not clickable at point (799, 308). Other element would receive the click: <div class="modal-body text-center">...</div>
  (Session info: chrome=69.0.3497.100)

大家好,上述异常是在我的项目中的ThankYou页面中引发的。我试图改变等待时间,但它也不起作用。下面是我使用的方法。

public void Clickthankyou() throws InterruptedException
    {
        if(driver.findElement(By.xpath("//*[@id='id_appoint']/h2")).isDisplayed())
        {

        WebDriverWait wait = new WebDriverWait(driver, 6);  
        WebElement elem =wait.until(ExpectedConditions.elementToBeClickable(Dateselect));

        if(elem.isDisplayed())
        {
            elem.click();
        }

        Thread.sleep(2000);

        driver.findElement(Clickbook).click();
        }
        else
        {
            driver.navigate().back();
        }

【问题讨论】:

  • 按钮被包裹时发生,有时无法接受点击。您可以通过单击包装器来绕过它,例如:span、div ... 等。或者使用驱动程序 javascript 执行程序执行 js click。
  • @Infern0 但是,我们可以使用 Actions 而不是 Js Click。?
  • 是的,但根据我的经验,js click 是使用多个浏览器和/或某些驱动程序(例如:firefox/ie 有操作类问题)的防弹解决方案。
  • Dateselect 和 Clickbook 中的内容
  • @AshishKamble Dateselect 只是将出现一周的日期列表。我将点击一个随机日期。在日期内,Booknow 选项将可用,我将点击该选项。

标签: selenium selenium-webdriver automated-tests testng


【解决方案1】:

这个异常的根本原因是由于用户看到的浏览器窗口的ViewPort。 您需要滚动到特定元素,然后单击它。
关键是元素不可见,因此没有资格点击。 好的,使用此代码使用 JavascriptExecutor 进行修复,

JavascriptExecutor js = (JavascriptExecutor) driver; 
js.executeAsyncScript('arguments[0].scrollIntoView(true)', driver.findElement(By.xpath("//*[@id='id_appoint']/h2")))
js.executeAsyncScript('window.scrollBy(0,-150)')

或者你也可以使用 Actions 类来做同样的事情。

new Actions(driver).moveToElement(driver.findElement(By.xpath("//*[@id='id_appoint']/h2"))).click().perform();

Debugging "Element is not clickable at point" error 可能重复

【讨论】:

    猜你喜欢
    • 2016-10-26
    • 2015-06-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-12-14
    • 2018-03-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多