Robot Framework:基礎

RF簡介

Robot Framework是一個基於Python的,可擴展的關鍵字驅動的測試自動化框架,用於端到端驗收測試和驗收測試驅動開發(ATDD)。它可用於測試分佈式異構應用程序,其中驗證需要涉及多種技術和接口

 

爲何選擇Robot Framework

1、啓用易於使用的表格語法,以統一的方式創建測試用例

2、可以使用關鍵字驅動、數據驅動和行爲驅動開發完成

3、提供易於閱讀的結果報告和HTML格式的日誌

4、平臺和應用程序是獨立的

5、易於擴展,提供一個簡單的API,用於創建自定義測試庫,可以使用Python或Java本機實現

6、提供命令行界面和基於XML的輸出文件, 以便集成到現有構建基礎架構(持續集成系統)中

7、爲Selenium提供Web測試,Java GUI測試,運行進程,Telnet,SSH等支持

8、內置對變量的支持,特別適用於不同環境下的測試

9、提供標記以分類和選擇要執行的測試用例

10、實現與源代碼控制的輕鬆集成:測試套件只是可以使用生產代碼進行版本控制的文件和目錄

11、提供測試用例和測試套件級別的設置和拆卸

12、模塊化架構支持創建測試,即使對於具有多種不同接口的應用程

 

 

RIDE工具

1、RIDE作爲Robot Framework的“臉面”,直接面向用戶。創建和運行測試都是在該界面上進行的

2、RIDE的界面大致分了4個區域:菜單欄、工具欄、工程文件區、工作區
    ⑴菜單欄:RIDE所有的功能都在這裏面。如打開一個工程、創建一個工程等
    ⑵工具欄:比較常用的功能,可以快捷操作
    ⑶工程文件區:這裏是一個目錄一個目錄的樹形結構。主要是存放工程的:測試套件、測試用例、自定義資源、關鍵字等
    ⑷工作區:這裏主要是編輯用例、運行用例的操作區

 

菜單欄

RF的菜單欄才主要包括:File、Edit、Tools、Navigate、Macros、Help按鈕


File菜單

File菜單下主要的選項有以下按鈕。如果最近打開過工程,File菜單下還會展示最近打開的工程,最多展示4個,可以直接切換工程

名稱 描述
New Project 新建工程
Open Test Suite 打開測試套件
Open Directory 打開目錄(一般打開測試項目都是選擇這項)
Save  保存
Save All 保存全部
Exit  退出

 


Edit菜單

1、File菜單下主要的選項有以下按鈕

2、如果是對測試用例腳本進行編輯的話,可以右鍵選擇需要操作的單元格(行)單元格,在彈出的對話框中快捷鍵操作

名稱 描述
Add Tag to selected  對選中的案例增加Tag標籤,可批量增加
Clear Selected  清除選中的案例
Undo  撤銷
Redo 重做
Cut   剪切 
Copy 複製
Paste 粘貼
Insert  插入
Delete 刪除
Comment  註釋當前行,可批量操作
Uncomment 取消當前行註釋,可批量操作
Insert Cells 插入單元格
Delete Cells 刪除單元格
Inset Rows 插入行
Delete Rows 刪除行

注:
這部分的操作可以在測試用例編輯區進行快捷操作

1、選中需要操作的行:進行行操作

 

2、選擇需要操作的單元格進行單元格操作

 

 

Tools菜單

Tools菜單下主要的選項有以下按鈕

名稱 描述
Test with Debug以debug 形式運行測試案例
Run Tests 運行測試案例
Stop Test Run 停止案例運行
Search Tests 搜索測試案例(可以通過名稱或Tag標籤搜索案例)
Search Keywords 搜索關鍵字(可使用快捷鍵F5)
Search Unused Keywords 搜索未使用過的關鍵字
Content Assistance 內容助手(用來做腳本補全,不過感覺很不方便)
Preview 預覽(預覽測試套件的文件內容,可以選擇格式來查看或打印)
Manage Plugins 管理插件
View All Tags   查看所有Tag
Import Library Spec XML  導入測試庫描述文件XML
View RIDE Log 查看RIDE日誌(如測試庫名寫錯時,可以通過該按鈕來排錯)
Preferences 參數配置(主要是一些個人喜愛設置)

 

 

Navigate、Macros、Help菜單

名稱  描述
Go Back 後退:跳轉到上一個訪問過的頁面
Go Forward  前進:跳轉到下一個訪問過的頁面
Manage Run Configurations 管理運行配置:可以增加或移除操作
hortcut keys 快捷鍵列表
User Guide 用戶指南
Report a Problem 報告問題
Release notes  更新日誌
About   關於

                                       
 

 

工具欄

工具欄中的按鈕主要是菜單欄中一些按鈕的快捷按鈕,從左到右依次爲:後退、前進、打開測試套件、打開目錄、保存、保存全部、搜索關鍵字、搜索測試用例、運行用例、停止運行用例

 

 

工程文件區

1、工程文件區下主要是由工程、測試套件、測試用例、資源、關鍵字組成
    ⑴工程:就是我們包含我們全部文件的一個文件夾
    ⑵測試套件:即testSuit,測試集。跟Python中的Unittest單元測試框架中的概念一樣
    ⑶測試用例:在RF中表示由一系列關鍵字等構成的測試用例
    ⑷資源:二次封裝關鍵字構成的TXT文件(一個資源文件裏面可以含有多個關鍵字,將一些功能類似或有相同點的關鍵字放在一個TXT文件中)
    ⑸關鍵字:由Python處理函數封裝成的(其實就是由Python寫的一些處理函數,用於處理對應事件)

2、在RF中Python函數、關鍵字、資源、測試用例的關係爲:
    ⑴Python函數封裝成關鍵字->多個關鍵字構成資源文件->若干關鍵字構成測試用例(資源)(關鍵字也可以不放在資源文件中(可以單獨存在),只是這樣的話,可能看起來比較雜亂)
    ⑵創建測試用例時:需要在所在目錄的測試集中導入所需的資源文件或關鍵字
    ⑶創建關鍵字時:需要在所在目錄的資源文件或測試集中導入所需的PY文件
        

3、界面
    右鍵工程名、測試套件名、測試用例名可以彈出二級頁面,進行下一步操作(每一級下的二級頁面按鈕會有點不一樣)

名稱 描述
New Suite 新建測試套件
New Directory 新建目錄測試套件
New Resource 新建資源
New Test Case 新建測試用例(測試套件下)
New User Keyword 新建用戶關鍵字
New Scalar 新建變量
New List Variable  新建列表型變量
New Dictionary Variable  新建詞典變量
Change Format 修改格式(可以修改工程的格式)
Select All Tests  選擇全部測試案例
Deselect All Tests 取消選擇全部測試案例
Select Only Failed Tests 只選擇失敗的測試案例
Select Only Passed Tests 只選擇成功的測試案例
Expand all 展開全部目錄
Collapse all 摺疊全部目錄

 

 

工作區

工作區裏的內容很多,工程、測試套件、測試用例、資源關鍵字都有與其對應的"Edit"、"Text Edit"、"Run"界面,不同的層級對應的界面會有點不同,先把通用的介紹下

 

測試套件的Edit頁面

1、分別選擇測試項目、測試套件、資源文件後,分別查看其對應的Edit頁面,可以看出
    ⑴測試項目和測試套件所提供的Edit標籤的功能基本是一樣的
    ⑵資源的工作區Edit與測試套件的基本相同,只是資源工作區的Edit頁面中沒有元數據定義部分
    ⑶setUp用於設置初始化工作,在每一個測試用例前先被執行
    ⑷tearDown方法在每個測試方法執行後調用,這個方法用於完成測試用例執行後的清理工作,如執行“close browser”關閉瀏覽器等

名稱 描述
Source  顯示當前套件的路徑
Settings 單擊顯示
Documentation  說明文檔,寫對當前工程的說明
Suite Setup 測試套件初始化(跟Unittest裏面的初始化一樣)
Suite Teardown 測試套件結束
Test Setup 測試案例初始化
Test Teardown 測試案例結束
Force Tags  強制標記,給當前測試套件下的每個測試案例都加上Tag,在測試案例上不能刪除,只能在設置的地方刪除
Default Tags  表示當前測試套件下測試用例默認的標記
TimeOut 用於設置用例的超時時間。如“1 min 10s”、“ 2 hours”等。
Template 指定模板使用的關鍵字
Tags 用於給用例添加標記
Library 加載測試庫,默認是Python安裝目錄下的site-packages裏的測試庫(也可以自己導入包所在的絕對路徑)
Resource  加載資源(主要是工程相關的資源文件)
Variables  加載變量文件
Import Failed Help  導入失敗的幫助
Add Scalar 定義變量
Add List  定義列表型變量
Add Dict  定義詞典
Add Metadata 定義元數據,定義之後Report和Log顯示定義好的內容

 

 

測試用例的Edit頁面

分別選擇一個測試用例和一個關鍵字的Edit頁面,可以看到用戶關鍵字的工作區Edit和測試用例的Edit頁面也基本一致,只是用戶關鍵字的界面多了一個Find Usages

 

 

Text Edit編輯頁面

這裏顯示的是測試用例、關鍵字等文件的真實內容了,它與Edit頁面時互通的
    ⑴測試用例的Edit頁面顯示的是當前用例的操作步驟等信息,Text Edit編輯頁面顯示的是當前測試套件下所有測試用例的操作步驟等信息
    ⑵TextEdit編輯頁面和Edit頁面是互通的。即:在Edit頁面編寫測試用例等後會同步到Text Edit頁面;在Text Edit編寫用例等後也會同步到Edit頁面(可以理解爲同一個東西的不同變現形式)
    ⑶Edit可視化的提供的按鈕輸入框,對於用戶來說更容易知道我要怎麼做;而在Text Edit中只是一個空當當的文本,我們跟本不知道如何下手

 

 

Run標籤頁面

該界面中主要是一些運行時的參數設置、日誌顯示等信息,Run標籤提供了豐富的操作和日誌

名稱 描述
Execution Profile 選擇運行方式,裏面有pybot、jybot和custom script
Start和Stop  用例的運行和停止
Report和Log  報告和日誌,要運行之後才能點擊
Autosave 自動保存
Arguments pybot的參數,可以在這裏輸入pybot的命令完成相應的操作
Show message log  默認爲勾選(勾選後頁面會顯示運行時的log,反正只顯示執行結果)
Only Run Tests with these Tags 只運行這些標記的測試案例
Skip Tests with these Tags  跳過這些標記的測試案例

注:
1、在選擇運行方式時:默認是用pybot來運行案例,pybot的運行Python編譯器完成。jybot需要安裝Jython的支持。custom script是選擇自定義的腳本來運行

2、Report和Log之間的區別:報告更多是結果上的展示,日誌更多是過程的記錄,在測試用例調試的過程中更多使用日誌來查看執行錯誤。當只想知道測試用例的最終執行情況時用報告

3、自動保存:如果不勾選,在修改了用例之後如果沒有保存的話,運行案例時會提示是否保存。勾選則在運行時自動保存了

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章