Robot Framework操作說明書


一、了解Robot Framework
Robot Framework是為“測試”而生,他的目標人群是測試工程師,它的目標和使命注定了Robot Framework必須要簡單/簡介/親民/易懂,而這些Robot Framework都做到了,這使得Robot Framework推出之后,得以快速發展傳播。
Robot Framework最重要特性之一是“Keyword-driven”(關鍵字驅動),keyword類似其他高級語言的函數,使得代碼結構化和重復利用。
Robot Framework不僅適用於常規的測試模式,也適用於ATDD(acceptance test-driver development) (各個相關團隊協作開發模式,比如軟件團隊/測試團隊/項目管理團隊等),所以適用十分廣泛。
Robot Framework是使用Python語言開發,它也可以運行在Jython(JVM)和IronPython(.NET)上。開發者可以用Python或者Java來更改和擴展Robot Framework,其他語言則可以通過Remote interface來進行擴展。
Robot Framework最早是有Nokia開發,后來開源供其它所有人共享。目前官方代碼放在Github上,采用Apache 2 license。
二、Robot Framework的架
Robot Framework是一個通用的測試框架,它的豐富的功能特性來自於library擴充,這些library一部分是Robot Framework自帶的,另外還有很多是第三方開發擴充的。對於大多數程序員或軟件測試工程師,只需要調用已有的library就可以編寫自己的use case了,這些use case對framework而言是“Test Data”。測試程序的執行,是先從Robot Framework解析Test Data開始,然后根據library或者tools提供的Keyword與被測試系統互動。測試完成后,會產生report/log(HTML格式)和output(xml格式)。
其構成的結構模塊如下圖所示:

 

 


三、Robot Framework的安裝
RF框架是基於python 的,所以一定要有python環境,請提前安裝python和配置環境,由於RF是基於python2.x開發,所以對2.0的兼容較好,3.x的會遇到一些兼容問題需要解決。
 Python3.x的建議直接用pip安裝各個需要的庫,以防因版本不同導致運行錯誤還要重新查找版本一致的。
1.wxPython 的安裝
說明:它是Python語言的跨平台GUI工具包,由於RIDE基於這個庫開發的,所以也需要安裝。
命令:pip install wxPython
下載地址: 
https://sourceforge.net/projects/wxpython/files/wxPython/2.8.12.1/wxPython2.8-win64-unicode-2.8.12.1-py27.exe/download
直接雙擊下一步即可

 

 


2.RIDE安裝
說明:RF框架測試數據的輕量級直觀編輯器,一個圖形界面的用於創建、組織、運行測試的軟件。
命令:pip install robotframework-ride
下載地址:
https://github.com/robotframework/RIDE/releases/download/v1.5.2.1/robotframework-ride-1.5.2.1.win-amd64.exe
直接雙擊下一步即可

 

 


3.Robot Framework 安裝
說明:RF是用於驗收測試和驗收測試驅動開發的通用測試自動化框架。
命令:pip install robotframework
4.安裝遇到的問題
倘若你桌面沒有生成RIDE快捷方式,請按以下步驟手動添加。

a.新建快捷方式,輸入 C:\Python27\pythonw.exe -c "from robotide import main; main()",路徑是自己安裝python的路徑

 

 


b.然后下一步,修改快捷方式的名稱為 RIDE,點擊完成 。
c.右擊RIDE屬性,更改圖標,瀏覽選擇
%SystemDrive%\Python27\Lib\site-packages\robotide\widgets\robot.ico
搭建參考文檔:https://www.cnblogs.com/yufeihlf/p/5945102.html

四、RIDE的啟動

以上安裝完成之后,如何啟動RIDE:
1.通過文件啟動(雙擊[dirPath]\python\Lib\site-packages\robotide下的__init__.py文件)
2.通過命令啟動(運行->ride.py回車/確認)
cd C:\Python27\Scripts\
python ride.py
3.將C:\Python27\Scripts\ride.py創建快捷鍵,
打開ride.py文件之后(以python方式打開),點擊“運行(start)”按鈕。
4.已有快捷方式的,直接雙擊運行。
注:路徑為自己安裝python的路徑。
五、需要安裝的Library
根據實際使用情況添加即可
pip install robotframework-selenium2library
(說明:RF版的selenium 庫,RF 、appium 等測試工具都可以基於這套API進行頁面的定位與操作)
下載地址:https://github.com/robotframework/Selenium2Library#readme
pip install robotframework-archivelibrary
pip install robotframework-SSHLibrary
(說明:遠程連接使用,安裝前需要安裝 PyCrypto,否則會出現 錯誤“Can't find vcvarsal.bat”)下載:http://www.voidspace.org.uk/python/modules.shtml#pycrypto
pip install robotframework-ftplibrary
(說明:連接ftp,創建文件夾,上傳文件到制定目錄等)
六、接口使用的Library
pip install requests
(說明:用於接口的連接、發送方式等)
pip install RequestsLibrary
(說明:與requests庫用於,寫法不同)
pip install Collecttions
(說明:可用於斷言使用)
pip install JSONLibrary
(說明:用於轉化json數據格式處理)
pip install ExcelLibrary
(說明:用於導入excel文件使用)
常見庫參考:https://blog.csdn.net/u013961875/article/details/78670249
七、RIDE使用
1.創建項目:File->New Project

 

 

 

 

注:選擇directory原因是,在directory的項目下可以創建測試套件,如果是tpye為file,則只能創建測試用例,這不利於用例的管理。
2.創建測試套件New Suite
在新建項目右鍵,點擊New Suite

 

 

 

 


注:選擇file原因是,在file的測試套件下可以創建測試用例,如果是tpye為directory,還得重新再繼續建file的測試套件,才能創建測試用例,因為測試用例只能在file類型下創建。
3.創建測試用例New Test Case
在新建的測試套件右鍵,選擇New Test Case

 

 

 

 


各功能面板說明可參考:https://www.cnblogs.com/yufeihlf/p/5949984.html
4.導入第三方庫和自己自定義的庫
在測試套件下的工作區的右方,點擊Library,在彈出框的name欄輸入第三方庫名稱或者自己編寫的庫。

 

 


導入不成功會顯示紅色,黑色為導入成功,可通過F5鍵查詢導入成功的lib和lib下的方法,看自己需要使用哪個就選應用哪個

 

 


導入不成功可通過查看log找原因,路徑:Tools->View RIDE Log

 

 


導入自己編寫的庫,文件最好用英文命名,還需要將文件路徑,例如:D:\robotframework\MyLibrary)**添加到**[PYTHON目錄]\Lib\site-packages**下的后綴名為pth的文件中。然后重啟ride,在測試套件的工作區的右方,點擊Library,在彈出框的name欄輸入“腳本名稱”(例如MyLibrary.py,就輸入MyLibrary),點擊OK即可。自己編寫的腳本中中文描述要加u,不然F5查看會亂碼,函數命名有(例如:Match_Url或者MatchUrl),都會解析為Match Url。
5.測試用例編寫
表格區:第一列一般寫的是關鍵詞,關鍵詞的來源包括BuiltIn庫,第三方導入庫,自己編寫的導入庫。通過ctrl+alt+space可以自動帶出相關關鍵字。以及相關用法,里邊有對入參的說明。Ctrl+鼠標懸浮(即鼠標在某個關鍵字上),可以直接顯示關鍵字的相關用法。第二三四五列,一般是入參,紅色的表示必填的入參。淺灰色表示選填的入參。深灰色表示無需填寫。

 

 

 

輸入sho再同時按住ctrl+alt+space鍵,則可以自動帶出相關關鍵字,以及選中關鍵字的用法。

 

 


6.運行測試用例

 

 


7.生成測試報告

 

 


 

 


編寫接口測試用例可參考文檔:https://www.cnblogs.com/klb561/p/9080417.html
8.編寫用例注意事項:
a.淺灰色編輯區進行注釋不能與前面有空格或者只能在已經不能使用的深灰色區域進行注釋,否則執行會報錯

 

 


b.Python3.x導入robotframework-excellibrary失敗問題:
使用pip install robotframework-excellibrary,會報錯:
execfile(join(dirname(file), ‘ExcelLibrary’, ‘version.py’)) NameError: name ‘execfile’ is not defined
建議直接下載離線包放在**[PYTHON目錄]\Lib\site-packages**文件中,解壓文件后修改內容,下載地址:https://files.pythonhosted.org/packages/b8/e7/8c079a814e7ad288ec2fc15671d8dc526e3d537bb00e4ab2b209a63674ed/robotframework-excellibrary-0.0.2.zip或者https://www.whitetown.com/excel-library/
修改內容如下:
1.setup.py
#execfile(join(dirname(file), ‘ExcelLibrary’, ‘version.py’))
exec(open(join(dirname(file), ‘ExcelLibrary’, ‘version.py’)).read())

 

 


2.ExcelLibrary.py
將所有的print xxx 語句修改為 print(xxx),python3.0對print的格式要求要()

 

 

#from version import VERSION
from .version import VERSION

 

 


3.init.py

#from ExcelLibrary import ExcelLibrary
#from version import VERSION

from .ExcelLibrary import ExcelLibrary
from .version import VERSION

 

 


c.Python3.x無法通過pip安裝,安裝方式:下載好壓縮包 ->解壓 -> 在解壓目錄的當前文件夾下,打開終端,輸入 : python setup.py install。
d.導入ExcelLibrary可能會不成功,可在Tools—View RIDE Log查看問題顯示,基本是因為ExcelLibrary里使用的庫找不到導致,例如會報Importing test library ‘ExcelLibrary’failed:ImportError:No module named natsort等是缺少natsort模塊,下載natsort模塊並安裝,還會提示Importing test library ‘ExcelLibrary’failed:ImportError:No module named xlutils是缺少xlutils,繼續下載xlutils並安裝。
ExcelLibrary語法可參考學習:
https://blog.csdn.net/weixin_38374974/article/details/82704169
e.RIDE控制台及日志中文亂碼處理:

 

 


找到Python路徑下的testrunnerplugin.py文件,例如:
C:\Python\Python37\Lib\site-packages\robotide\contrib\testrunner\testrunnerplugin.py
修改如下:

 

 


還不行的話,檢查一下文件
Lib/site-packages/robotide/contrib/testrunner/testrunner.py

 

 

 

 


八、最后祝語
剛接手不懂可參考附件編寫熟悉:[接口測試.robot](http://doc.linghit.io/server/../Public/Uploads/2020-05-15/5ebe18d3ba7a5.robot "[接口測試.robot")、[test.xls](http://doc.linghit.io/server/../Public/Uploads/2020-05-15/5ebe18cf9400e.xls "[test.xls"),通過jenkins郵件的發送另外寫操作說明。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM