不用寫程式就完成自動化測試 — RobotFramework介紹與安裝

不用寫程式就完成自動化測試 — RobotFramework介紹與安裝

這篇文章主要介紹一套不用寫程式就可以完成自動化測試框架 – Robot Framework

透過與 Selenium IDE 的比較讓大家更清楚瞭解使用 Robot Framework 的優點與特色

這套框架R.F, 可以完成接口測試, web測試, 手機測試, 甚至可以利用 Java, Python 等擴充自動化測試

主要講解這套框架的特色並且說明基本的安裝

Robot Framework 特色

  • 關鍵字驅動 ( Keyword Driven ) 的方式完成自動化測試腳本 , 類似 Selenium IDE 的方式
  • Data-Driven 可以在腳本內定義輸入資料, 完成每組資料輸入的測試, 適合用在 API 接口測試, 表單填寫測試, 登入測試等
  • BDD – 可以自行定義 “關鍵字”, 讓測試報告輸出的描述更接近 User Story
  • Python, Java 的延伸使用, 如果目前定義的關鍵字有所限制, 可以進一步用程式語言擴充 (Selenium IDE 無法做到這點)
  • 自動產生 HTML 報告, 無須額外安裝與設定, 該測試報告易於閱讀與瞭解
  • 透過 Selenium Web Driver 也可以支援各種瀏覽器, IE, Chrome, Firefox 等的測試
  • 跨平台, 可以在 Windows, Linux, Mac 等執行

Image result for robotframework RIDE editor

與Selenium IDE 比較?

我們用我們所熟習的 Selenium IDE 來瞭解 Robot Framework 的運作方式

  • 像Selenium IDE 一樣的方式用關鍵字編寫測試腳本  —  Yes
  • 像Selenium IDE 可以自動錄製 — 這點 Robot Framework 到不是原聲Robot Framework 的主要強項,  筆者者建議可以使用 Katalon 的瀏覽器插件
  • 利用 Python 來擴充補足?   Yes. 這也是 Selenium IDE 做不到的致命傷, 擴充性不佳
  • 利用現有的擴充套件可以進行 Web Selenium 測試,  接口測試, 手機測試等等?  這正式 Robot Framework 最強大的優點, 一樣都不需要寫程式, 只需要靠關鍵字就可以完成, 目前的擴充套件有哪些呢? 參考 http://robotframework.org/#libraries
  • Robot Framework 的腳本會不會很複雜? 跟 Selenium IDE 類似用文字編輯器可以編輯, Selenium IDE 提供Firefox 插件編輯, RobotFramework 提供類似的編輯器, 但是是在 Python 下執行, 因此也可以在Windows, Linux, Mac上執行, 除了關鍵字不同之外, RobotFramework腳本編輯與Selenium IDE類似, Robot Ramework 腳本範例如下:
Open Browser https://www.google.com/ Chrome
Input Text //input[@name=”q”] abc
Click Element //input[@name=”btnK”]

Robot Framework 相關 Selenium 關鍵自用法可以參考:

http://robotframework.org/Selenium2Library/Selenium2Library.html#Shortcuts

安裝

接著我們要進行相關的安裝, 主要安裝的組件如下

  • Python 2.x
  • Python SetupTools (PIP)
  • wxPython 2.8 with unicode (注意不要安裝最新版本, 主要因為 RF RIDE相容性問題)
  • RobotFramework
  • RobotFramework IDE

Python

https://www.python.org/downloads/

Windows 安裝

  • 可以直接使用 MSI Installer 安裝
  • 安裝完執後建議設定環境變數 PATH = C:\python27\ ; c:\python27\Scripts

Python Setuptools

https://pypi.python.org/pypi/setuptools

解壓縮完之後, 輸入:

python  setup.py   install

Python PIP https://pypi.python.org/pypi/pip#downloads

解壓縮完之後, 輸入:

python  setup.py   install

Robot Framework 安裝

正確安裝完 Python 與 PIP setup 工具之後, 可以直接在命令列下輸入下列, 安裝指定版本 Robot Framework:

pip install robotframework==3.0.2

官方網站

https://github.com/robotframework/robotframework/releases/tag/3.0.2

wxPython安裝

wxPython 主用運用在Python圖形化介面的應用程式, RobotFramework 提供開發的IDE稱為RIDE,

因此wxPython主要為了運行該IDE使用

下載安裝路徑

https://sourceforge.net/projects/wxpython/files/wxPython/2.8.3.0/

安裝包檔名記得選 unicode , 例如 Windows 安裝包

wxPython2.8-win32-unicode-2.8.3.0-py25.exe

wxPython2.8-osx-unicode-2.8.3.0-universal10.4-py

錯誤訊息:

you need to install wxPython2.8 toolkit with unicode support….

解決方式: 主要因為 RobotFramework RIDE 不支援最新版 wxPython, 另外安裝包需要選擇 unicode

Mac的安裝也是建議使用 2.8 的版本, 較新的版本可能導致無法運行

RobotFramework -RIDE

接著安裝的是 Robot Framwork 的開發環境 RIDE

https://pypi.python.org/pypi/robotframework-ride

直接透過下列方式安裝

pip install robotframework-ride
或
easy_install robotframework-ride

安裝完之後可以透過  RIDE.py 執行

Image result for robotframework RIDE editor

錯誤訊息:

python should be executed in 32 bit mode to support wxPython on Mac…

解決方式

defaults write com.apple.verisoner.python Prefer-32-Bit  -bool   yes

或是

~/.bash_profile 加入

export   VERSION_PYTHON_PREFER_32_BIT  = yes

退出後運行 source   ~/.bash_profile

 

RobotFramework Hellow World

1. 啟動 Robot Framework IDE, “RIDE.py”

2. File > New Project > “TestProject”

3. 滑鼠右鍵 “TestProject” >  New Suite > “testSuite1”

4. 滑鼠右鍵 “testSuite1”  >  New Test Case > “case1”

5. 表格中填寫相對應腳本

log   hello World

6. 執行並產生報告

HTML測試報告範例

Image result for robotframework reports

說明:

其中的”log”就是 Robot Framework 定義的關鍵字, 功能為 print

“log” 相關的用法語說明可以參考

http://robotframework.org/robotframework/latest/libraries/BuiltIn.html#Log

參考其他 Robot Framework 自定義的關鍵自功能,

http://robotframework.org/robotframework/

關鍵字小技巧

筆者建議可以利用 F5 Search Keyword

Image result for robot framework F5

 

 

Leave a Reply

Your email address will not be published. Required fields are marked *