robot framework是乙個自動測試框架,可到官網檢視詳細介紹。
本文中的robot framework安裝在win7 (32 bit) 平台上. 接下來按順序安裝以下的軟體/包。
software
version
post-steps
note
python
python-2.7.6
set env var to path:
c:\python27
c:\python27\scripts
robot framework
robotframework-2.8.1.win32
wxpython
wxpython2.8-win32-unicode-2.8.12.1-py27
ride
robotframework-ride-1.2.2.win32
installation via cli with administration privilege
安裝ride之後, 桌面快捷方式可能鏈結檔案有問題,可以修改其目標為: c:\python27\pythonw.exe-c "from robotide import main; main()"
這裡做個背景介紹:x-product
用於保護linux伺服器檔案系統之上的檔案。manual scan是其中的乙個手動掃瞄檔案的功能,將掃瞄出的病毒進行隔離(或者清除等),並且記錄log。
以下demo中robot framework安裝在win7之上,而x-product安裝在另一台linux伺服器上。
robot framework: 該框架用於管理測試用例,並且能夠很好的生成測試報告。
keyword: 在robot framework中,關鍵字有點像其他語言中的函式。同樣關鍵字也具有三個部分:keyword name, arguments, and return values. 在robot framework中寫測試用例需要符合其**語法的規範。
ssh library: 這是乙個ssh/sftp的庫,可以用來和遠端其他的機器進行通訊。
我們目標去測試x-product的manual scan功能能否發現乙個spyware的測試樣本。測試邏輯如下圖所示:
首先,ssh library需要被安裝. 如下表所示,按順序安裝以下的包. 安裝完成之後可以使用命令python -c "import sshlibrary」檢視是否安裝成功
package
version
pycrypto
pycrypto-2.6.win32-py2.7
paramiko
paramiko-1.7.3-ctypes.win32
ssh library
robotframework-sshlibrary-1.1.win32
然後, 如下圖所示,工程hellorobot被建立.helloworld測試套被建立,通常乙個測試套裡面包含乙個功能測試的測試用例集合.manualscanforspyware是本次測試的乙個測試用例.
接著, 如下圖所示,在寫測試用例之前,我們首先匯入sshlibrary 和user keyword resource. user keyword resource 「setupkeyword.txt」 是我們自己所寫的高階關鍵字.
同時scalar variables被建立,如下圖所示:
如下圖所示,之前提到的user keywordresource被建立. 高階關鍵字setupforms連線到需要測試的splx伺服器,傳送乙個shell指令碼 「setup.sh」 ,然後傳送乙個命令去執行「setup.sh」.
再接著, 如下圖所示,setup負責在執行測試用例之前的清理工作. 這裡高階關鍵字setupforms來完成測試用例執行前的清理工作. 測試步驟如下:
[step1].連線到伺服器
[step2]. 登陸到伺服器
[step3]. 傳送病毒樣本「spyware.exe」到測試伺服器
[step4]. 傳送測試指令碼「testscript.sh」到測試伺服器
[step5]. 傳送命令去執行指令碼「testscript.sh」
[step6]. 從輸出中獲取測試結果
[step7]. 關閉和伺服器之間的連線
[step8]. 對測試結果列印log
[step9]. 檢視是否測試成功
最後, 我們來執行這個測試用例. 如下圖所示, 我們可以從ride中直接看到測試結果和測試的log. 我們也可以通過點選圖中的按鈕report/log,來檢視html形式的測試報告. ok, 可以看到,我們這個測試用例成功啦~~~
robot framework 介面自動化測試
介面測試比ui測試更有價值,如果專案時間緊張,測試介面更好一些,但每次都頻繁的手工填寫介面進行測試也浪費時間,下面給大家介紹一下很好的自動化測試框架robot framework,並且做介面自動化測試事半功倍。其返回值驗證和與資料庫連線進行增刪改查很方便,邏輯也很嚴謹,如果公司沒有造輪子推薦這麼做。...
Robotframework 介面自動化測試
1.目的 1 以雲平台為例 實現註冊 登入 更新apikey 新增專案 新增裝置 新增感測器 新增執行器 感測器每隔3s上報一次資料 1分鐘後與雲平台主動斷開連線的介面自動化測試。2 斷言每條用例是否執行成功。3 程式不管執行多少次都不報錯。2.robotframework環境搭建 1 安裝pyth...
robotframework 命令列執行測試指令碼
整個工程路徑為 d sqlw test robotframework datahub4.0.8 1.執行指定的測試用例 用法 robot t 測試用例名 可為正規表示式,如00 也可以是具體的用例名 suite路徑 2.執行指定的用例集 用法 robot suite路徑 3.執行指定標籤下的測試用例...