robotframework 入門 (一)安裝、工具ride/pycharm、三種用例模式

測試教程網(蟲師)http://www.testclass.net/rf/

(蟲師)Robot Framework自動化測試 ---視頻與教程免費分享

  電子書下載 《robot framework 自動化測試

        上課視頻分享《robot framework上課視頻

        最新錄製網易雲課堂《robot framework自動化測試入門

        最新公開課《robot framework從入門到放棄》

robotframwork安裝步驟

  1. 安裝python
  2. 安裝setuptools 與pip  (安裝setuptools 後可用easy_install 命令。用pip安裝 Python 很方便,省去了搜索--查找版本--下載--安裝等繁瑣的過程).  setuptools 與 pip 下載地址:https://pypi.python.org/pypi/setuptools      https://pypi.python.org/pypi/pip
  3. 用pip安裝robotframwork (可用pip安裝)
  4. 用pip 安裝wxPython(wxPython 是 Python 非常有名的一個 GUI 庫,因爲 RIDE 是基於這個庫開發的,所以這個必須安裝。)
  5. 用pip安裝ride  (RIDE 是 Robot Framework 測試數據的編輯器。它使測試用例的創建、運行、測試項目的組織可以在圖
    形界面下完成。)

我本地的版本(robotframwork 3.1.1已經支持python3)

Python 3.5.4
下面的這些都可以用pip install  包名==指定版本號,安裝,我裝的版本如下:

robotframework                 3.1.1
robotframework-seleniumlibrary 3.3.1
wxPython                       4.0.4   (ride依賴的)
robotframework-ride            1.7.3.1  (ride)
Pygments                       2.3.1

ride安裝後配置快捷鍵

爲什麼ride? 使用 RIDE 使得實現測試功能更簡單,尤其是那些非技術團隊。簡單意味着好維護.

我的python版本是3.5,官網的ride都是python2.7 ,ride其他版本下載 https://github.com/HelioGuilherme66/RIDE/releases

ride如果安裝失敗,雙擊快捷鍵,黑閃打不開界面。失敗原因一般都是依賴的包版本不兼容。

pip uninstall robotframework-ride卸載後重裝:pip install wxPython==版本號    ,   pip install ride==版本號

  • 安裝RIDE依賴包(可pip安裝):robotframework、Pygments、wxPython(wxpython是用於支持python圖形化界面的,安裝它主要是用來運行RIDE

  • 安裝ride: pip install robotframework-ride==1.7.3.1   (安裝成功後一般自動建快捷鍵失敗,需要自己手動建)

  • 手動建快捷鍵:桌面鼠標右鍵->新建->快捷方式->輸入:D:\python\python.exe -c "from robotide import main; main()",->進行下一步命名爲:RIDE
  • 更換快捷鍵圖標:點擊快捷方式->右鍵屬性->更換圖標路徑選擇D:\python\Lib\site-packages\robotide\widgets\robot.ico

ride使用參考這篇

ride 界面

ride的F5快捷鍵打開keywords幫助

ride中的各種顏色指示:

添加library: 黑色示添加的庫正常,紅色表示庫不存在。

測試用例裏面,輸入一個關鍵字“Open Browser”,關鍵字顏色是藍色,說明它是一個合法的關鍵字,後面有一個方框是紅色的,表示這個參數不能缺省的。通過說明信息中,我發現它需要一個 url 地址是必填的,當然還需要指定 browser (默認不填爲 friefo

 

 

配置 pycharm支持robot文件

(注意官網解釋:“File | Settings for Windows and Linux PyCharm | Preferences for macOS”,意思是在windows和linux系統中,file-settings的功能等同於macOS系統中的preference。所以分清楚系統哦~給出此解釋的官網地址:網頁鏈接

1. 打開Pyhcarm,打開菜單欄File>Perferences(macOS)| settings (windows)> 選擇Plugins> 搜索IntelliBot並安裝。

我安裝的是比較新的那個,編寫用例的時候,可以自動感知關鍵字,如下圖。

2. 配置RF的文件類型識別:file>setttings>editor>file types>選擇Robot feature>下面registerd patterns裏面添加*.robot   和 *.txt 

3. 配置suite和case的運行菜單,

①配置Robot Run TestSuite: file>setttings>tools>external tools>點+ 新建>填寫信息如下

  • name填寫: Robot Run TestSuite
  • program填寫: D:\Python\Python35\Scripts\robot.exe (根據自己安裝的路徑填寫)
  • parameters填寫:-d results $FileName$
  • workdirectory填寫:$FileDir$

②設置Robot Run SingleTestCase:  file>setttings>tools>external tools>點+ 新建>填寫信息如下

  • name填寫: Robot Run SingleTestCase
  • program填寫:  D:\Python\Python35\Scripts\robot.exe (根據自己安裝的路徑填寫)
  • parameters填寫:-d results -t "$SelectedText$" ./
  • workdirectory填寫: $FileDir$

配好後如下圖:

單獨執行1個測試案例

注意:一個robot文件是一個TestSuite,如果要單獨執行1個TestCase,需要鼠標選中需要執行的用例,右擊選擇執行

單獨執行1個測試案例,執行的結果

D:\Python\Python35\Scripts\robot.exe -d results -t "Invalid Username" ./
==============================================================================
Login Tests                                                                   
==============================================================================
Login Tests.Invalid Login :: A test suite containing tests related to inval...
==============================================================================
Invalid Username                                                      | PASS |
------------------------------------------------------------------------------
Login Tests.Invalid Login :: A test suite containing tests related... | PASS |
1 critical test, 1 passed, 0 failed
1 test total, 1 passed, 0 failed
==============================================================================
Login Tests                                                           | PASS |
1 critical test, 1 passed, 0 failed
1 test total, 1 passed, 0 failed
==============================================================================
Output:  D:\RobotFrameworkWebDemo\login_tests\results\output.xml
Log:     D:\RobotFrameworkWebDemo\login_tests\results\log.html
Report:  D:\RobotFrameworkWebDemo\login_tests\results\report.html

Process finished with exit code 0

命令運行腳本

執行rst腳本
robot --log custom_log.html --name Custom_Name QuickStart.rst

幫助:robot --help。

測試庫

Robot Framework附帶了一些測試庫,可以分爲標準庫外部庫自定義庫

  1. 標準庫 與核心框架一起分發,幷包含通用庫,例如 OperatingSystemScreenshotBuiltIn,這是特殊的,因爲它的關鍵字是自動可用的。
  2. 外部庫,例如 用於Web測試的Selenium2Library,必須單獨安裝。
  3. 如果可用的測試庫不夠,則可以輕鬆創建自定義測試庫
web 自動化測試,相關庫:SeleniumLibrary,Selenium2Library,Selenium2Library for Java、watir-robot 等。
(SeleniumLibrary 是基於 Selenium1.0 開發的,Selenium2Library 是基於 Selenium2.0 開發的。如果沒有歷史遺留問題,我們直接使用 Selenium2Library)
Windows GUI 測試相關庫:AutoItLibrary。
移動測試 相關庫:Android library、iOS library、AppiumLibrary 等。
數據庫測試 相關庫:Database Library (Java)、Database Library (Python)、MongoDB library 等。
文件對比測試 相關庫:Diff Library。
HTTP 測試 相關庫:HTTP library (livetest)、HTTP library (Requests)等。

 

三種測試用例模式

關鍵字驅動(keyword-driver)、數據驅動(data-driver)、行爲驅動模式(behavior-driver)

 

webdemo下載,webdemo本地調試遇到的問題

D:\RobotFrameworkWebDemo>pip install -r requirements.txt
安裝完成後提示如下
Successfully installed Deprecated-1.2.5 PyGithub-1.43.5 docutils-0.14 invoke-1.2.0 pyjwt-1.7.1 rellu-0.7 robotframework-3.1.1 wrapt-1.11.1

WebDemo 我本地調試遇到的問題:
問題1:報錯no module named SeleniumLibrary,需要安裝 pip install robotframework-seleniumlibrary
問題2:WebDriverException: Message: 'geckodriver' executable needs to be in PATH.
因爲webdemo裏面用的是firfox瀏覽器,需要安裝對應瀏覽器的驅動,下載後放在D:\Python\Python35\Scripts目錄。如果不放入項目根目錄下,則要設定system.setProperty("","");

firefox歷年版本安裝包的官方鏡像地址:
https://download-installer.cdn.mozilla.net/pub/firefox/releases/

火狐所有的geckodriver.exe驅動大全
https://github.com/mozilla/geckodriver/releases

geckodriver下載倉庫如果無法訪問,可至百度雲盤進行下載:
雲盤地址:https://pan.baidu.com/s/1o7Nj2tW
分享密碼:mdv5

 

Geckodriver版本+firefox版本+selenium版本 要匹配正確

 

參考文檔

 

(譯文)Robot Framework 教程 - 一個完整的例子  ,原作者githup地址:https://github.com/ThomasJaspers/robot-keyword-tutorial

官方文檔:robot framework框架快速入門指南,有關語法的更多詳細信息,請參閱Robot Framework用戶指南

用戶指南:http://robotframework.org/robotframework/3.1.1/RobotFrameworkUserGuide.html

WebDemo下載: https://github.com/robotframework/WebDemo   (入門研究下這個)

WebDemo裏面用到的SeleniumLibrary庫   https://github.com/robotframework/SeleniumLibrary

簡書比較好的文章:殘陽夕露 

RobotFramework學習00-基本配置及初步使用       RobotFramework學習04-擴展庫之 SeleniumLibrary

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章