zoukankan      html  css  js  c++  java
  • Firefox上运行自动化测试脚本提示元素无法点击“WebDriverException: Message: Element is not clickable at point“解决方法

    1. Firefox上运行脚本时提示“WebDriverException: Message: Element is not clickable at point (934.316650390625, 700.316650390625). Other element would receive the click:”

    2.分析原因:  

      (1)首先肯定不是因为页面元素不存在而无法点击,也不是要点击的button不在预览范围内。

      (2)可能是被前一步的操作的一个弹出层挡住了。因为前几步是弹出了一个modal,在关闭modal的时候webdriver就立刻执行下一步点击某个link,而这时modal可能还没完全关闭掉。
         解决办法是等待那个弹出层完全关闭掉,link可以点击的时候再执行利用类库中的‘WebDriverWait’方法,

        java中语法:

           WebDriverWait wait = new WebDriverWait(driver, 15);

              wait.until(ExpectedConditions.elementToBeClickable(By.id("ID of the element")));//等待直到定位的元素可以点击 打算用上面的方法来解决

          结果坑爹的不起作用,实在闹不明白为啥不起作用。 最后直接在两步之间加了个简单的thread.sleep(2000)命令解决了

       python中语法:
           element = WebDriverWait(driver,3,0.5).until(EC.presence_of_element_located((By.ID,"saveNewFormId")))

           element.find_element_by_id("saveNewFormId").click()

         结果也解决了问题,··· 至于为啥可能selenium支持的更好些吧
    (3)另外一种情况是元素在视图之外,可以用调用JS这种方法解决,不过还没尝试,做个记录:
          (JavascriptExecutor) driver).executeScript( "arguments[0].scrollIntoView(true);", webElement);
                                                      webElement.click();

    (4)我能想到的就这几个原因了,希望有别的解决方法的同仁能补充一下,更好的帮助后来者解决问题,谢谢!
    (TestYao编辑于2016年3月31日晚)
    本文为"测试那点事_TestYao"博客整理收集,转载请注明出处,谢谢!
  • 相关阅读:
    Cisco 路由器硬件信息(各种序列号)查询命令
    解析黑客利用交换机漏洞攻击的常用手段
    所有windows操作系统键盘操作
    [转载]UC黑话解释Cisco统一通信江湖黑话解释
    常用照片尺寸和纸张尺寸参考
    Word中如何選擇從向文字
    python基础数据类型元组(tuple)
    promiseAll 使用
    js JavaScript 封装异步函数并被调用
    promise 学习2
  • 原文地址:https://www.cnblogs.com/testyao/p/5342503.html
Copyright © 2011-2022 走看看