说明
本章主要对selenium2核心package remote 进行说明,remote主要包含了以下几个模块:
remote package本地完整的路径为: C:\Python27\Lib\site-packages\selenium\webdriver\remote
remote目录下所有模块
__init__.py 你懂的
command.py 定义了webdriver标准的命令常量,这些常量本身是没有意义的,但其标识了webdriver远程通信协议(webdriver's remote wire protocols)
errorhandler.py 定义和实现了webdriver错误编码和错误处理类
file_detector.py 定义和实现了文件侦测类
mobile.py 定义和现实了移动端的连接和context指令机制
remote_connection.py 扩展了url_request.Request实现,和webdriver remote server通信交互就这个模块实现了,有兴趣的可以深入研究
switch_to.py 定义和实现了切换至alert、window、frame、active等系列动作
utils.py 定义和实现了一些辅助功能,例如格式化为json、加载json,压缩文件等等
webdriver.py 这是应用核心了,我们日常自动化测试调用的方法大都来源这个模块,必须掌握该模块提供的方法,该模块提供的方法有:浏览器操作类(例如cookie管理、刷refresh),元素定位类(以find_element_ 开头的各种定位函数)等等,这里就不一一列举,后续针对webdriver常用的方法,提供一个清单出来以供参考。
webelement.py web元素操作类,定义了web元素操作的各种方法,必须掌握
重点强调
想要使用webdriver做好自动化测试,必须对webdriver.py和webelement.py这两个模块的源码进行深入研习和掌握,这样才能从知道在什么时候调用什么方法,每个方法的使用方式等等。