分享

Selenium3.X源码分析之开始,走上人生巅峰

 开源优测 2021-12-09

        早在2017年,写了系列Python Selenium2代码实例系列,,打算针对Selenium3写个系列,从源码分析开始,但不立flag,写到哪算哪

        为什么要写Selenium3.X系列了?掌握代码已经是基础功底,所以从源码开始掌握和理解显得更加重要,而当前各种文大都停留在简单的应用缺乏成体系的从源码分析Selenium系列文章,加上也很久没看Selenium Python端源码了,借着阅读源码的过程写点文章分享下。

下面为Python Selenium2系列,关注公众号,回复关键字:selenium。即可获取到该系列。

Selenium是什么? Selenium自动化浏览器。就是这样!你如何运用这种力量完全取决于你自己。它主要用于自动化web应用程序以进行测试,但当然不限于此。无聊的基于web的管理任务也可以(而且应该)自动化。Selenium得到一些最大的浏览器供应商的支持,这些供应商已经(或正在)采取步骤使Selenium成为他们浏览器的本地部分。它也是无数其他浏览器自动化工具、api和框架中的核心技术。

https://www.

为什么还要学习Selenium?

笔者以为,深入理解和掌握Selenium是你遨游在自动化测试领域的核心基础能力!!!

在开始进行Python Selenium3.x源码分析前,需要做几个准备工作:

- 安装Python3 参见 [快学Python3]环境安装

- Visual Studio Code 一个好的IDE是必备的,可以参见基于Visual Studio Code搭建Python开发环境

- 安装或更新至最新的Selenium版本,命令如下:

> pip install selenium -U

使用以下命令查看当前selenium版本等相关信息

> pip show selenium

先看下Selenium Python端API目录结构,如下图所示:

- common 定义了通用的异常类

- webdriver 核心实现

将上面的目录展开下,如下图所示:

- common/exceptions.py 定义了所有可能在webdriver代码中出现的异常

- webdriver/android

   webdriver/blackberry

   webdriver/chrome

   webdriver/edge

   webdriver/ie

   webdriver/firefox

   webdriver/opera

   webdriver/safari

   webdriver/iewebkitgtk

上述各目录定义了各浏览器兼容的代码,即用于支持不同的浏览器

- webdriver/common 定义了webdriver所指定的通用能力     

- webdriver/remote 定义了webdriver核心能力

- webdriver/support 定义了webdriver辅助能力

    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多