1. 程式人生 > >Selenium2Library原始碼解讀(1)- 概述

Selenium2Library原始碼解讀(1)- 概述

概述

官方文件這樣描述Selenium2Library:

Selenium2Library is a web testing library for Robot Framework.

It uses the Selenium 2 (WebDriver) libraries internally to control a web browser.
See http://seleniumhq.org/docs/03_webdriver.html for more information on Selenium 2
and WebDriver.

Selenium2Library runs tests in a real browser instance. It should work in
most modern browsers and can be used with both Python and Jython interpreters.

個人翻譯如下:

Selenium2Library是用於RobotFramework框架的測試庫。

它應用Selenium 2 (WebDriver)庫來控制瀏覽器,可訪問http://seleniumhq.org/docs/03_webdriver.html">http://seleniumhq.org/docs/03_webdriver.html來獲取更多有關Selenium2和WebDriver的資訊。

Selenium2Library在實際瀏覽器例項上執行測試,它能夠支援多數現代瀏覽器,並可以使用Python和Jython直譯器。

原始碼

原始碼所在路徑為:

"\Python27\Lib\site-packages\robotframework_selenium2library-1.7.1-py2.7.egg\Selenium2Library"

個人安裝版本為1.7.1,見下圖:

RobotFramework能夠識別的關鍵字所在包為"keywords",檢視包的定義,其實際是從keywords包內的11個模組中匯入關鍵字,後續也主要從這11個模組著手,來進行解讀。keywords包的定義:

from _logging import _LoggingKeywords
from _runonfailure import _RunOnFailureKeywords
from _browsermanagement import _BrowserManagementKeywords
from _element import _ElementKeywords
from _tableelement import _TableElementKeywords
from _formelement import _FormElementKeywords
from _selectelement import _SelectElementKeywords
from _javascript import _JavaScriptKeywords
from _cookie import _CookieKeywords
from _screenshot import _ScreenshotKeywords
from _waiting import _WaitingKeywords

__all__ = [
    "_LoggingKeywords",
    "_RunOnFailureKeywords",
    "_BrowserManagementKeywords",
    "_ElementKeywords",
    "_TableElementKeywords",
    "_FormElementKeywords",
    "_SelectElementKeywords",
    "_JavaScriptKeywords",
    "_CookieKeywords",
    "_ScreenshotKeywords",
    "_WaitingKeywords"
]

Selenium2Library基於Selenium2 (WebDriver)技術,並應用於RbotFramework框架。接下來的內容就是個人結合平時工作經驗,在閱讀Selenium2Library原始碼過程中的一些記錄和思考。從今天起,爭取每週都有進展。