1. 程式人生 > >Robot Framework測試框架

Robot Framework測試框架

Robot Framework

  • Robot Framework是一個通用型的自動化測試框架
  • 框架 - 實現特定需求的軟體的解決方案工具包

什麼是自動測試框架

  • 為解決某一個領域問題的工具包。
  • 自動測試用例的實現方式
  • 自動測試用例的開發支援

IDE(RIDE)

和用例管理系統的整合
測試執行

  • 相關測試套件(Suite)和測試用例的執行規則

  • 初始化和清除

  • 測試報告

測試人員開發測試資料檔案對應一個個的測試用例
測試資料裡面使用的功能小模組叫關鍵字,由測試庫實現

  • Robot Framework載入測試庫,並解釋執行Test Data也就是測試用例

RF的安裝(py2和py3都支援)
RF的安裝(python語言開發的,就是一個庫)

1.在Python中安裝 robotframework

  • 執行命令 pip install robotframework

2. seleniumlibrary #支援selenium自動化的RF擴充套件庫**

  • 在兩個Python中安裝 seleniumlibrary

  • 安裝命令 pip install robotframework-seleniumlibrary

  • 或者 pip install --upgrade
    robotframework-seleniumlibrary(–upgrade寫不寫都可以)

3.pycharm安裝外掛

在Pycharm中,點選選單 file - settings - plugins
在彈出對話方塊中 點選下方 按鍵 Browse Repository
在新對話方塊中, 搜尋欄裡面輸入 robot

安裝 下面3個外掛

  • IntelliBot #pycharm裡面語法高亮的外掛

  • IntelliBot @SeleniumLibrary Patched
    #SeleniumLibrary的關鍵字有事不能導航到diamante裡面去,建議安裝這個庫

  • Run Robot framework file #或(Run Robot Framework TestCase)隨便安裝一個。
    裝好了之後可以在pycharm裡面直接執行,的敲命令

上面3步裝好就行了
ride是圖形介面的,提供了視覺化的編輯功能,ride的開發者已經不維護他了,只可以py2用。不建議使用。開源的程式碼,有人已經開發了py3的。

test suit 和testcase
測試套件,就是測試用例的集合
一般我們把功能相關的測試用例組合起來放在一起,成為某個測試套件 #可以是一個目錄,可也以是一個檔案。跟資料夾一樣,可以層層巢狀。檔案裡面是測試用例。
測試套件裡面包含測試用例

程式碼例子

*** Settings ***            #相當於import 庫,它的匯入申明就是這樣的。配置的表,三個星號加表的名字。測試用例檔案是由表組成的。
Library  SeleniumLibrary        #在rf測試檔案中,一共有4種類型的表。

*** Test Cases ***      #用例表
百度搜索鬆勤          #用例名,裡面的內容都是縮排的
    Open Browser                  http://www.baidu.com    chrome
    Set Selenium Implicit Wait    5
    Input Text                    id=kw                   鬆勤\n
    ${firstRet}=                  Get Text                id=1
    Should Contain                ${firstRet}             鬆勤網           #檢查點的關鍵字



**執行用例**
  • 開發的時候是一個一個執行

  • 批量的時候可以直接執行命令: robot rffile(檔案所在目錄) 會找出所有的用例執行
    執行單個用例:robot text01.robot 用例檔名稱

RF支援四種的表

  • 分別是:Settings,Variables,Test Cases,Keywords

  • 表明必須出現在第一個單元格中,表名大小寫不敏感

    Settings表,是這個測試套件的全域性配置表。比如,說明這個測試套件要使用的測試庫,資原始檔,測試套件的環境初始化(setup)和清除(tear down),該套件內的標籤等等
    在這裡插入圖片描述
    Test Cases表,是用來定義這個測試套件的測試用例的
    在這裡插入圖片描述
    Variables表,就是這個測試條件的全域性變量表
    在這裡插入圖片描述
    Keywords表,是用來定義這個測試套件的使用者關鍵字的
    在這裡插入圖片描述

關鍵字的來源

  • 測試庫

  • 資原始檔

  • 用例所在檔案的關鍵字表

測試用例表裡面的每個測試用例 大概可以分為

  • 配置部分

     	[Documentation]該用例的文字說明
     	[Tags]該用例的標籤
     	[Setup],[Teardown]該用例的初始化和清除操作
     	[Template]宣告該用例是模板關鍵字驅動的。本用例只包含測試資料
     	[Timeout]設定用例的超時時間
    

    主體部分

  • 用例主題部分主要是有變數組成的

     	**關鍵字的來源**
     			測試庫
     			資原始檔
     			用例所在檔案的關鍵字表
    
  • 用例主題部分也包含變數賦值

rf裡面的註釋也是用#號