每天進步一點點,關注我們哦,每天分享測試技術文章
本文章出自【碼同學軟件測試】
Robot Framework?由Robot Framework Foundation支持。許多行業領先的公司在其軟件開發中使用 該工具。
碼同學公眾號:自動化軟件測試
碼同學抖音號:小碼哥聊軟件測試
Robot Framework 是開放和可擴展的。Robot Framework 幾乎可以與任何其他工具集成,以創建強大而靈活的自動化解決方案。Robot Framework 可以免費使用,無需許可費用。
Robot Framework 具有簡單的語法,使用人類可讀的關鍵字。它的功能可以通過使用 Python、Java 或 許多其他編程語言實現的庫進行擴展。Robot Framework 有一個豐富的生態系統,包括作為獨立項目開發的庫和工具。
01
robotframework環境搭建
安裝python3.6以上,并且確保環境變量配置正確
安裝robotframework庫
pip install robotframework
安裝robotframework ride腳本圖形界面編輯器
pip install robotframwork-ride
點擊是,會在桌面上創建一個快捷圖標?
02
內置關鍵字庫
robotframwork安裝之后會出現在python安裝目錄的Lib/site-packages目錄下
其中的libraries目錄下就是我們將來編寫腳本時用到的關鍵字源碼
這些關鍵字庫是按照一定的分類進行的
Builtln
變量定義、循環控制、數據計算、進制轉換、斷言判斷、日志等等
Collections
處理python列表和字典的相關操作
DateTime
處理日期和時間轉換的相關操作
Dialogs
提供暫停執行和獲取用戶輸入的方法
OperatingSystem
提供和操作系統相關的關鍵字
Process
操作進程相關的關鍵字
Remote
特殊庫充當?Robot Framework?和其他地方的庫之間的代理。實際的庫可以在不同的機器上運行, 并且可以使用任何支持?XML-RPC?協議的編程語言來實現
Screenshot
提供用于截取桌面屏幕截圖的關鍵字
String
用于生成、修改和驗證字符串的庫
Telnet
可以連接到 Telnet 服務器并在打開的連接上執行命令
XML
用于生成、修改和驗證 XML 文件的庫
03
ride基本說明
雙擊桌面ride圖標即可打開ride界面
01
項目創建
點擊File->New Project, 選擇directory原因是,在directory的項目下可以創建測試套件,如果是tpye 為fifile,則只能創建測試用例,這不利于用例的管理
02
創建測試套件
測試套件是用來管理多個測試用例的集合
右鍵選擇項目名稱,New Suite, 選擇fifile原因是,在fifile的測試套件下可以創建測試用例,如果是tpye 為directory,還得重新再繼續建fifile的測試套件,才能創建測試用例,因為測試用例只能在fifile類型下創建
03
創建測試用例
右鍵選擇測試套件,點擊New Test Case
04
測試套件工作區說明
1、測試套件Edit區 分為4部分
設置區
設置區默認是隱藏的,點一下才會出現
Documentation:
文檔,每一項都有。可以給當前的對象加入文檔說明
Suite Setup:
指的是測試套件啟動的時候就執行某個關鍵字。
(例:我在Suite Setup設置了?Sleep | 5sec,表示等待5秒,要注意關鍵字的參數要使用 | 分隔)
Suite Teardown:
指的是測試套件結束的時候就執行某個關鍵字
Test Setup:
指的就是案例啟動的時候執行某個關鍵字
Test Teardown:
指的就是案例結束的時候執行某個關鍵字
Test Template:
測試模版,這是可以指定某個關鍵字為這個測試套件下所有TestCase的模 版,這樣所有的TestCase就只需要設置這個關鍵字的傳入參數即可
Test Timeout:
設置每一個測試案例的超時時間,只要超過這個時間就會失敗,并停止案例 運行。這是防止某些情況導致案例一直卡住不動,也不停止也不失敗
Force Tags:
在文件型Suite這里還可以繼續給子元素增加Force Tags,但是他不能刪除父元 素設置的tags
Default Tags:
默認標記,其實和Force Tags沒啥區別的
引用區
主要是用來加載外部文件
Library:加載測試庫,主要是[PYTHON目錄]\Lib\site-packages里的測試庫
Resource:加載資源,主要是你工程相關的資源文件
Variables:加載變量文件
參數區
主要是用來定義該套件的內部變量
Add Scalar:定義普通變量
Add List:定義列表型變量
Add Dict:定義字典
數據區
主要是在report和log里顯示定義好的內容,格式和document一樣
2、測試套件Text Edit區
測試套件測試用例文本信息
3、測試套件Run區
Execution Profifile:
選擇運行方式,里面有pybot、jybot和custom script。默認pybot即可。
Start:
運行案例。若該測試套件下的測試用例前無勾選,則默認執行該測試套件下所有的用例。若測試用例勾選,則執行該測試陶見下勾選的用例。
Stop:
停止案例。
Report和Log:
報告和日志,要運行之后才能點擊。他們的區別,報告更多是結果上的展示,日志 更多是過程的記錄,更多使用的還是日志。
Autosave:
自動保存,如果不勾選,在修改了案例之后如果沒有保存的話,運行案例時會提示是否 保存。勾選則在運行時自動保存了。
Arguments:
pybot的參數(或者jybot等)。完整版的參數可以在doc命令行輸入pybot.bat --help
Only Run Tests with these Tags:
只運行這些標記的測試案例。在case的setting里可以添加tag
Skip Tests with these Tags:
跳過這些標記的測試案例。在case的setting里可以添加tag
05
測試用例工作區說明
1、測試用例Edit區 主要分為2部分
設置區
Documentation:
文檔,每一項都有。可以給當前的對象加入文檔說明。
Setup:
指的就是案例啟動的時候執行某個關鍵字。
Teardown:
指的就是案例結束的時候執行某個關鍵字。
Tags:
標記某個測試用例。在Run區中Only Run Tests with these Tags和Skip Tests with these Tags,會通過這個標志位來識別是否運行或跳過用例。
Timeout:
設置每一個測試案例的超時時間,只要超過這個時間就會失敗,并停止案例運行。這是防止某些情況導致案例一直卡住不動,也不停止也不失敗。
Template:
測試模版,這是可以指定某個關鍵字為這個測試套件下所有TestCase的模版,這樣所有的TestCase就只需要設置這個關鍵字的傳入參數即可
表格區
這是編寫測試用例的地方
2、Text Edit和Run區和測試套件沒有區別
04
robotframwork基礎語法
01
日志中文亂碼處理
找到自己python安裝目錄下的Lib\site-packages\robotide\contrib\testrunner\testrunnerplugin.py?打開上述文件,找到565行先復制,再注釋,另起一行粘貼和修改
修改完成后重啟ride
02
用例內部變量
1、普通變量
普通變量定義需要使用Set Variable關鍵字,第一個單元格指的是變量名稱,最后一個單元格10, 指的是把10賦值給a這個變量
Log是日志關鍵字,輸出a的值
運行一下
2、列表變量
列表變量定義需要使用Create List關鍵字
列表定義可以使用兩種方式:
${xxx}
@{xxx}
3、字典變量
字典變量定義需要使用Create Dictionary
字典定義可以使用兩種方式:
${xxx}
&{xxx}
03
集合公共變量
有一些是在同一個測試集合中都會用到的公共變量,那么就可以在集合中進行定義
添加一個普通變量
添加一個列表變量
添加一個字典變量
公共變量使用
集合的公共變量在他下面的每個測試用例中都可以使用
運行后結果:
04
判斷
案例:給定一個成績值,大于90分輸出優秀、大于80是良好、大于70是一般、大于60是及格,其他是不及格
Run Keyword If的使用
免費領取碼同學軟件測試課程筆記+超多學習資料+完整視頻+最新面試題,可以轉發文章+ 私信「碼同學666」獲取資料哦
05? ?循環
案例1:計算100以內的數字和
FOR...IN RANGE xxx ... END結構
${i}相當于循環變量
Evaluate?表示將${sum}+${i}的計算結果賦值給${sum}
案例2:輸出列表中的偶數
FOR ... IN xxx ... END 結構
${i}相當于循環變量
Run Keyword If?是判斷當前循環變量是2的倍數,那么就輸出
案例3:跳過當次循環,遍歷列表,如果是5的倍數就跳過
Continue For Loop If表示滿足條件就跳過本次循環
案例4:遍歷列表,如果碰到5就終止循環
Exit For Loop If表示滿足條件則終止循環
06
關鍵字庫導入
需要使用一些擴展關鍵字時,需要先導入相對應的庫,比如針對列表和字典操作的庫是Collections
導入Collections
選擇測試集合,注意導入后如果顯式紅色,說明導入不正確
使用Collections中的關鍵字
07
用戶關鍵字
用戶關鍵字是自定義的一種關鍵字,相當于寫代碼時自己封裝一個函數
1、普通變量作為入參
案例:封裝一個計算指定數字之內的所有數字和,比如100以內,1000以內等等
創建關鍵字
調用關鍵字
在某個測試集合中想要調用自定義的關鍵字,需要先導入
導入自定義關鍵字
導入之后顯式綠色說明正確,顯式紅色說明導入的resource路徑不對
調用關鍵字
在測試用例中調用自己寫的關鍵字
2、列表變量作為入參
案例:封裝一個返回給定列表中的偶數
創建關鍵字
調用關鍵字
3、字典變量作為入參
案例:將學員各個語言科目成績定義成字典{'python':95,'java':58,'c':70},封裝一個關鍵字將不及 格的分數都改成60
創建關鍵字
調用關鍵字
4、多變量入參
案例:封裝一個計算三個數之和的關鍵字,第三個數默認值是10
創建關鍵字
調用關鍵字
對于有默認值的參數,在調用時可以傳也可以不傳
END
免費領取碼同學軟件測試課程筆記+超多學習資料+學習完整視頻,可以關注我們公眾號哦:自動化軟件測試
本文著作權歸作者所有,任何形式的轉載都請聯系作者獲得授權并注明出處。