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