> Selenium Webdriver 3.X源码分析系列第11篇,该系列原则上会将整个源码分享一遍
在selenium webdriver Python端,最核心的代码就是在remote包目录下了,因为该目录下定义和实现了我们利用selenium webdriver 进行自动化测试的几乎所有的核心API能力。
下面我们先看一下remote目录结构,如下图所示:
其源码路径为 selenium/webdriver/remote,remote下个py文件功能大致说明如下:
- __init__.py 空文件,用于标识remote是标准的python package
- command.py 定义了标准的webdriver命令常量
- errorhandler.py 定义了webdriver wire 协议中的错误编码
- file_detector.py 定义和实现了文件监控能力
- getAttribute.js 定义和实现了获取属性能力
- isDisplayed.js 定义和实现了判断元素是否可显示等能力
- mobile.py 定义和实现了移动端能力
- remote_connection.py 定义和实现了与webdriver远程服务连接的能力
- switch_to.py 定义和实现frame、windows切换能力
- utils.py 定义和实现了辅助能力
- webdriver.py 定义和实现了webdriver核心api能力
- webelement.py 定义和实现了webdriver元素操作核心api能力