1. 程式人生 > >Robot Framework and Ride

Robot Framework and Ride

Robot framework是諾西(NSN)開源的一套自動化測試工具,在通訊裝置自動化測試中很實用,它基於Python開發,主要模擬NMS網管配置資料到網元NODE,並讀取配置看配置是否生效,ECI的測試簡圖


1、  環境建立

首先安裝Python,接著到http://code.google.com/p/robotframework/下載安裝Robot framework,在目錄C:\Python27\Scripts下會發現pybot.bat,說明安裝成功,比如寫好測試用例工程autotest,可以用pybot--suite autotest做整個Suite的測試,或者pybot ***.html單個Case的測試

         其實這樣足夠了,但是沒有一個IDE環境,生成測試用例不夠便利,諾西還開發了一個Robotframework IDE,就是Robot framework-ride,它依賴Wxpython,安裝Wxpython之後,接著到http://code.google.com/p/robotframework-ride/安裝Robot framework-ride,在目錄C:\Python27\Scripts下會發現ride.py,利用IDE生成測試工程autotest,執行ride.pyautotest即可

2、  Project工程建立和設定

首先在Python27\Scripts下執行ride.py,執行IDE,工具欄->>file->>NewProject新建自動化測試工程,建立D:\autotest工程


工程屬性設定


Documentation:註釋

LIB:是整個專案所有Case需要用到的自定義庫,ConnectCli.py庫有下面函式:

1.cli_delay

2.cli_connect

3.cli_close:

4.cli_sendcmd:

5.cli_set

6.cli_cmpassert:

Suite Setup是整個工程開始執行前的動作,Suite Teardown是整個工程執行完後動作,TestSetup是工程中每個Suite開始執行前動作,Test Teardown是工程中的每個Suite執行完後的動作

這裡Suite Setup:cli_connect |{IP},表示在整個測試開始前連線ECLI伺服器端,Suite Teardown:cli_close,表示整個測試完成後斷開連線

Variable是整個專案Python需要用到的變數定義以及賦值,相當於別名

3、  Suite建立和設定

Autotest右鍵->>Add suite,新建一個Suite:init


Suite屬性設定,和Project工程屬性設定一樣,只不過,SuiteSetup/Teardown對應本Suite所有Case,Test Setup/Teardown對應本suite每個Case執行前和後的動作

4、  Case建立和設定

Init右鍵->>Add new case,在Init這個Suite下新建一個Case:init_switch_info


Case屬性設定,就是寫測試用例了


測試用例: cli_sendcmd傳送init.create命令,引數模擬函式入參,cli_dalay在等待0.5S後,cli_cmpassert判斷返回結果

Tags:HuangYonggang,是一個標籤,每個研發人員自己的測試用例打自己的標籤,在寫好所有Case之後,可以指定只RUN自己模組的Case

5、  測試RUN


人工選擇測試Case或者TAG來區分,最後在D:\autotest生成Report.html和LOG檔案


這是一個生成的Report.html檔案

IDE只是提供一個便利操作介面,很多時候用命令列pybot–i HuangYonggang ***.html標示只測試tag為HuangYonggang的Case