前面也学了很多的selenium元素定位了,相信肯定也是遇到了很多的问题,此处列举出一些,来看看是否有你遇到过的还未解决的吧。

   selenium.common.exceptions.WebDriverException(msg=None, screen=None, stacktrace=None)

描述:WebDriver基础的异常类

解决思路:检查驱动版本与浏览器版本


selenium.common.exceptions.TimeoutException(msg=None, screen=None, stacktrace=None)

描述:在足够的时间内没有完成某项操作

解决思路:适当的增加时长,等待界面元素的渲染


selenium.common.exceptions.NoSuchElementException(msg=None, screen=None, stacktrace=None)

描述:定位元素不被找到

解决思路:检查是否写错了元素,更换定位元素


selenium.common.exceptions.NoSuchAttributeException(msg=None, screen=None, stacktrace=None)

描述:元素属性不能被找到

解决思路:检查是否写错了元素属性


selenium.common.exceptions.NoAlertPresentException(msg=None, screen=None, stacktrace=None)

描述:切换到alert弹窗,alert并没有弹出

解决思路:增加等待时间


selenium.common.exceptions.NoSuchFrameException(msg=None, screen=None, stacktrace=None)

描述:没有iframe窗口

解决思路:检查是否存在此类窗口

selenium.common.exceptions.InvalidElementStateException(msg=None, screen=None, stacktrace=None)

描述:元素无效

解决思路:更改定位元素


 selenium.common.exceptions.ElementNotSelectableException(msg=None, screen=None, stacktrace=None)

描述:元素不能被选中

解决思路:检查是否是元素是否写错,检查属性


selenium.common.exceptions.ElementNotVisibleException(msg=None, screen=None, stacktrace=None)

描述:元素不可见,不能操作

解决思路:检查元素是否带有display:none属性


selenium.common.exceptions.InvalidSwitchToTargetException(msg=None, screen=None, stacktrace=None)

描述:切换窗口或框架不存在

解决思路:检查页面元素,查看是否存在此类窗口或检查定位元素


selenium.common.exceptions.NoSuchWindowException(msg=None, screen=None, stacktrace=None)

描述:目标窗口不存在

解决思路:打印窗口信息,核对切换的窗口是否存在


引发上述问题的根源,在这博主说一下:

1、元素不存在,无法定位到,遇到这类问题,很大的可能性就是你定位的元素,你自己写错了定位方式或属性 。一个界面可能存在多个相同的元素属性,所以,定位前别着急,在元素界面搜索一下看看是否有存在同名。

2、元素存在,但定位表达式有问题,没有定位到该元素,这类问题应该还是很常见的。特别是小白学习的阶段,所以要细心了。

3、页面加载过久,元素还没加载出来,所以定位失败,这类问题,你需要设定好等待时间,元素界面的渲染完成还是很重要的。对于这类问题,可以看看这篇文章:开学了软测的同学快来--selenium,必须要知道的操作-等待时间及窗口操作-详解+项目实战_清欢无别事-CSDN博客

这篇文章也是博主自己写的,可得好好看了。除了上述的问题之外,其实还有很多的元素定位问题,可以集大家的留言,后续博主再添加上来。

另外,解决思路不唯一,所以这不是唯一的方案。如有更好的解决方法,欢迎私信,留言。或添加博主微信qing_an_an。

selenium运行常见的报错问题--让你及时发现问题的所在相关推荐

  1. linux 编译报错 not a directory,Linux常见英文报错中文翻译

    Linux常见英文报错中文翻译(菜鸟必知) 1.command not found 命令没有找到 2.No such file or directory 没有这个文件或目录 3.Permission ...

  2. OpenCV新手调试出现的两个常见的报错

    OpenCV新手调试出现的两个常见的报错 基本的OpenCV2.4+VS配置可自行搜索,下面是配置好了后运行报错的几个情况: 1.由于图片路径错误报错,显示: 0x000007FEFD3AA06D 处 ...

  3. 使用selenium模块控制谷歌浏览器报错

    使用selenium模块控制谷歌浏览器报错: browser=selenium.webdriver.Chrome() Traceback (most recent call last):File &q ...

  4. vue-cli打包构建时常见的报错解决方案

    vue-cli打包构建时常见的报错解决方案 参考文章: (1)vue-cli打包构建时常见的报错解决方案 (2)https://www.cnblogs.com/bester-ace/articles/ ...

  5. 关于运行robot framework 报错解决方法,ModuleNotFoundError: No module named ‘robot‘

    关于运行robot framework 报错解决方法,ModuleNotFoundError: No module named 'robot' 参考文章: (1)关于运行robot framework ...

  6. gradle 项目运行主类报错

    Error:gradle-resources-: java.lang.NoClassDefFoundError: org/apache/tools/ant/util/ReaderInputStream ...

  7. 【错误记录】PyCharm 运行 Python 程序报错 ( UnicodeDecodeError: ‘ascii‘ codec can‘t decode byte 0xe5 in positio )

    文章目录 一.报错信息 二.解决方案 一.报错信息 PyCharm 运行 Python 程序报错 : D:\002_Project\011_Python\APK\venv\Scripts\python ...

  8. 【错误记录】PyCharm 运行 Python 程序报错 ( PEP 8: E402 module level import not at top of file )

    文章目录 一.报错信息 二.解决方案 一.报错信息 PyCharm 运行 Python 程序报错 : PEP 8: E402 module level import not at top of fil ...

  9. 【错误记录】PyCharm 运行 Python 程序报错 ( PEP 8: W292 no newline at end of file )

    文章目录 一.报错信息 二.解决方案 一.报错信息 PyCharm 运行 Python 程序报错 : PEP 8: W292 no newline at end of file 二.解决方案 在每个 ...

最新文章

  1. JS判断数组里面是否包含指定的数
  2. 使用Python+Qt时解决QTreeWidget中的内容超出边界后自动隐藏的问题
  3. 设计模式之_Iterator_03
  4. 【英语学习】 - 君若不离不弃,吾当生死相依
  5. 《数据库系统基础教程》读书笔记——第二章 关系数据模型(1)
  6. 微信打不开MP4文件 (记录编码问题)
  7. 实体与实体之间的联系
  8. 移动流量转赠给好友_中国移动怎样转赠手机流量?月结流量用不完怎办
  9. Ubuntu 设置合上笔记本盖子不休眠的方法
  10. 体验在终端——参加2012年移动开发者大会有感
  11. 服务器恢复系统怎么操作,windows2008用装置盘恢复服务器操作体系
  12. 基于RNN-LSTM模型的诗词生成/TensorFlow
  13. python3可视化-pyecharts图形库,利用Map进行地图的创建和使用
  14. 命令行 修复系统_让我们修复旧的命令行
  15. C语言----排班系统
  16. 期刊模板-如何去除左下角的横线
  17. 英文文章汇总+翻译小亮点
  18. lms算法的verilog实现_最小均方算法(LMS Algorithm)理论及DSP实现
  19. UGUI射线检测或触碰检测
  20. ERP系统方案的实施步骤

热门文章

  1. 微商城和微店的区别都有哪些
  2. 笔记--JS--LCP
  3. medoo update mysql,medoo的增删改功能
  4. 娱乐视频直播为什么需要DASH
  5. nuc980 RJ45 网络接口
  6. 2012.6.28-29一级建造师-法规精讲(陈印老师)
  7. E文积累_20080131_the finest edge is made with the blunt whetstone
  8. (附源码)ssm微课堂知识考核系统 毕业设计 141147
  9. PhotoScan与smart3d的Omega,phi,kappa和R
  10. (计算机组成原理)第三章存储系统-第三节1:主存储器和CPU的连接