Robot Framework(5)- 使用測試庫
阿新 • • 發佈:2020-05-25
如果你還想從頭學起Robot Framework,可以看看這個系列的文章哦!
https://www.cnblogs.com/poloyy/category/1770899.html
前言
在RF 測試庫裡面,分為三種測試庫
- 標準測試庫
- 擴充套件測試庫
- 遠端測試庫
標準測試庫
啥是標準庫
- 它們隨 Robot Framework 版本一同釋出的測試庫, 不需要單獨安裝,但部分標準庫仍然需要手動匯入
- 只有 BuiltIn 庫是自動匯入,不需要手動匯入
標準庫類別
庫 | 介紹 |
BuiltIn | 常用 且 最基礎 的關鍵字 |
Collections | 用於處理 List 和 Dict 的關鍵字 |
DateTime | 支援建立和驗證日期和時間值以及它們之間的計算 |
Dialogs | 支援暫停測試執行並從使用者那裡獲取輸入資料 |
OperatingSystem | 支援執行各種與作業系統有關的任務 |
Process | 支援執行系統程序相關 |
Screenshot | 截圖 |
String | 處理字串和驗證字串內容 |
Telnet | 支援連線到Telnet 伺服器,並執行命令 |
XML | 用於驗證和修改 XML 文件 |
擴充套件測試庫
啥是擴充套件測試庫
標準庫以外的其他測試庫都統稱為擴充套件測試庫,它們是在 RF 開源社群實現的各種庫;當然包括了你自己開發的測試庫
常見的擴充套件測試庫
常見領域 | 擴充套件庫 |
Web 自動化測試 |
SeleniumLibrary Selenium2Library Selenium2Library for Java watir-robot |
Window GUI 測試 |
AutoItLibrary |
移動端自動化測試 |
Android library iOS library AppiumLibrary |
資料庫測試 |
Database Library (Java) Database Library (Python) MongoDB library |
HTTP測試 |
HTTP library (livetest) HTTP library (Requests) |
檔案對比測試 | Diff Library |
遠端測試庫
啥是遠端測試庫
- 是一個特殊的標準庫,沒有關鍵字
- 它作為一個代理存在於 Robot Framework 和 實際(遠端的)測試庫中間
- 實際的測試庫可以執行在其它機器上, 而且實現語言也不再限於Robot Framework原生支援的程式語言
Library 匯入測試庫
直接看栗子
栗子說明
- 下圖專案目錄結構,上面的栗子在第二個紅圈的檔案內
- MyLibrary 的 兩個 library 檔案是自己建立的 Python 檔案【屬於使用者自定義的關鍵字檔案】
知識點
- 測試庫通常在 Setting 表格中宣告 Library 來匯入,庫名稱跟在 Library 後面.
- 庫名稱既是大小寫敏感的,也是空格敏感的
- 如果一個測試庫是在某個包裡的,則必須指明完整的包名稱路徑【如: MyLibrary.library2 】
- 測試庫的引數也可以使用預設值,不定數量引數【如: MyLibrary.library1 arg1 agr2 】
- 測試庫名稱和引數都可以使用變數【如: Library ${LIBRARY} ,其實匯入的是 DateTime 庫】
可以匯入測試庫的檔案包括
- 測試用例檔案
- 資原始檔
- test suite initialization files【測試條件初始化檔案,後面講】
所有這些場景中,一旦在這些檔案中匯入了測試庫,則測試庫中所有關鍵字在當前檔案內都是可見的
對於資原始檔,這些關鍵字在引用這些資原始檔的地方也是可見的
Import Library 匯入測試庫
- 匯入測試庫的另一種方式是使用 BuiltIn 庫提供的關鍵字 Import Library
- 該關鍵字也可以傳引數
- 匯入的關鍵字在當前的測試套件中可用
- 當測試庫在測試執行前不能匯入( Settings 中不能匯入),只能在執行過程中通過某些關鍵字來啟用時,就可以用 Import Library 來匯入某些關鍵字
測試庫設定別名
別名大家應該都知道,就是為了避免不同測試庫但是關鍵字重名的情況
簡單栗子
知識點
指定別名是用 WITH NAME ,必須大寫,小寫會報錯
傳引數和別名指定關鍵字的栗子(忽略爆紅)
知識點
- 如果測試庫要傳參,則引數列表在WITH NAME 前面(如紅圈)
- 呼叫不同庫但相同名字關鍵字的寫法: 別名.guan jian zi (如箭頭)
&n