Selenium2Library庫檔案的使用和簡析
做測試要想使用RobotFramework,不得不提的就是Selenium2Library這個庫檔案,在測試指令碼中大多數常用的功能都包含在裡邊。它定義了很多常用的屬性和事件,像滑鼠單擊、文字框輸入等等都做好了封裝。
一、Selenium2Library關鍵字的使用
在RIDE的選單欄中,選擇Tools->Search Keywords開啟關鍵字搜尋(可用快捷鍵F5),在Source中選擇Selenium2Library,就可看到它給我們提供的關鍵字和對應的詳細介紹了。在指令碼的執行中,RIDE會根據指令碼的流程,再通過關鍵字、引數等條件呼叫相關的類庫,來完成我們預先設定好的場景(一個功能流程)。
例如:
開啟瀏覽器,我們可以用Selenium2Library中的Open Browser
指令碼的編寫如下,第一列是關鍵字名稱,這裡可以在關鍵字的前邊指定用的是哪個類庫的——Selenium2Library.open Browser;第二列是要開啟的網址引數;第三列可寫開啟網址的瀏覽器
這樣,開啟瀏覽器的程式碼就編寫完成了
二、Selenium2Library分析
自動化測試的指令碼和開發編寫程式碼一樣,在RIDE中,指令碼的編寫在一個表格容器裡,它也提供了文字視窗用於編輯展示程式碼,二者的作用一樣。底層類庫的使用和呼叫介面差不多,所有的類庫放在安裝目錄的site-pakages中,我們要用的Selenium2Library所包含的的檔案如下:
使用開發工具PyCharm開啟
keywords中包含了Selenium2Library提供給RobotFramework的所有關鍵字。上圖中紅色框出的部分
def click_button(self, locator)
它表示在_formelement類中定義了一個滑鼠單擊事件,locator指引數,使用時填入。在Selenium2Library中,所有需要引數的方法,都會傳給locators-->elementfinder的find()方法中,然後再根據引數的不同轉發給下一個方法,對於帶參方法的操作思想就是:分——總——分小結:
Selenium2Library實質上是一系列方法的封裝,這些封裝好的方法以介面的方式提供給RIDE,供自動化測試呼叫。通過分析它裡邊的方法,對RIDE的使用也會有更多的認識,而且……它確實是一個學習python語言的好demo。