如果你還想從頭學起Robot Framework,可以看看這個系列的文章哦!
https://www.cnblogs.com/poloyy/category/1770899.html
RF 的介紹
- Robot Framework是基於 Python 的可擴展關鍵字驅動的自動化框架,用於驗收測試
- 驗收測試驅動開發(ATDD),行為驅動開發(BDD)和機器人流程自動化(RPA)
- 它可用於分布式,異構環境;在這些環境中,自動化需要使用不同的技術和接口。
- 該框架周圍有一個豐富的生態系統,由作為單獨項目開發的各種通用庫和工具組成
啥叫可擴展關鍵字驅動
分兩part看,可擴展,關鍵字驅動
可擴展
代表你可以自己開發關鍵字,或者引用第三方的關鍵字庫【如Selenium、Appium的關鍵字庫】
關鍵字驅動
由關鍵字驅動着自動化測試的執行,所有測試用例都離不開關鍵字【RF的關鍵,也是學習的關鍵】
RF 常用的網站
官網
github
https://github.com/robotframework/robotframework
官方文檔
http://robotframework.org/robotframework/latest/RobotFrameworkUserGuide.html
中文翻譯的官方文檔(基於 v3.0)
https://robotframework-userguide-cn.readthedocs.io/zh_CN/latest/
rf 標准庫文檔
http://robotframework.org/robotframework/#standard-libraries
RF的優勢
直接引用官方的表述了
- 表格式的語法簡單易用,以統一的方式 創建測試用例
- 可以通過現有關鍵字創建可復用的 高層關鍵字
- 提供了直觀的HTML格式的 測試報告 和 日志文件
- 作為一個測試平台,是應用無關的
- 提供了 測試庫API,可以輕易地使用Python或者Java創建自定義的測試庫
- 提供了 命令行接口 和基於XML的 輸出文件,可以與現有框架集成(如持續集成系統)
- 提供了多種測試庫支持,如用於web測試的Selenium,Java GUI測試,啟動進程,Telnet,SSH等
- 可以創建 數據驅動的測試用例
- 內置支持 變量,在不同的環境中特別實用
- 提供 標簽 來分類和 選擇測試用例
- 非常容易與源碼控制系統集成,因為 測試套件 就是文件夾和文本文件
- 提供了 用例級別 和 測試套件級別 的setup和teardown
- 模塊化的架構,支持針對不同接口的應用程序創建測試
RF 的架構
RF 是一個通用的,應用和技術無關的框架,它的架構如下圖
測試數據(test data)使用非常簡單、易於編輯的表格格式,Robot Framework會解析測試數據,執行測試用例,並生成日志和報告
框架本身對測試對象一無所知, 而是通過 測試庫 與其交互;測試庫可能是直接使用被測應用程序的接口, 也可以使用其它底層的測試工具作為驅動
通俗易懂的中文架構圖
RF 栗子
測試用例
下圖是因為用例RIDE,才會用這種方法顯示用例,但是也可以用Pycharm 和 VSCode來寫【后面統一使用Pycharm了,就不講解RIDE了,有空再說】