【Robot Framework 項目實戰 00】環境搭建


前言

我們公司在推廣RF這個框架做后端接口測試,力求讓同事們能更快的完成服務端需求的自動化,作為主導者之一,決定分享一些經驗,方便后來者。

我會從安裝部署、Request、selenium、自定義框架、jenkins集成docker運行五個方面來記錄這些信息。

環境部署

Python3

我們的第一步就是安裝Python3,安裝方法可以自行搜索。

venv

每個應用可能需要各自擁有一套“獨立”的Python運行環境。venv就是用來為一個應用創建一套“隔離”的Python運行環境。

在新版本的Python3中,venv環境隔離工具已經集成到了標准庫中,我們可以開包即用。首先,創建一個目錄,如:RF_XX,在終端中切換到這個目錄,執行下面的命令:

python3   -m venv venv

命令解析:前一個venv 表示執行venv 命令,后一個venv表示創建一個名稱叫venv的虛擬環境。

執行上面的命令之后,我們的虛擬環境的創建完成了,以類unix環境為例,Windows大同小異。我們能看到生成了一個venv目錄,目錄下有3個文件夾:binincludelib ,以及一個文件:pyvenv.cfg。其中bin存儲的是這個環境的一些可執行程序,lib 存儲的是從主Python中復制過來的包,我們后續要安裝的包也會保存在這里。pyvenv.cfg中的信息如下,我們可以修改include-system-site-packages來控制在虛擬環境中是否使用系統中的庫。

# cat pyvenv.cfg 
home = /usr/local/bin
include-system-site-packages = false
version = 3.7.1
venv的使用

如果我們使用的是Pycharm我們可以直接在設置中搜索Project Interpreter來設置當前項目使用的Python環境(包含虛擬環境)。直接在終端中,我們也可以通過下面的方式來設置Python的運行環境,以上面的虛擬環境為例,我們執行下面的指令就能進入虛擬環境:

source venv/bin/activate

注: Windows下直接執行activate即可,但是cmd窗口需以管理員權限運行,腳本在script目錄下,不在bin目錄下。

進入虛擬環境的標志是你的終端提示符前面會展示你的環境名稱,比如博主就是:

(venv) bingo@Mac RF$ 

和進入python虛擬環境一樣,退出也很簡單:

deactivate

退出后終端前面的環境信息會消失。

安裝robotframework

按照RF很簡單,在終端中確保是在虛擬環境中(提示信息前綴),執行下面的命令:

pip install robotframework

校驗

將下面的信息保存到一個文件中,比如hello.robot,然后執行pybot hello.robot

*** Test Cases ***

test case1
    log    hello robot framework

注: Windows用戶虛擬環境Scripts 目錄下是否有 pybot.bat 文件,正確安裝 Robot Framework 一定會生成該文件。如果要在非venv環境執行,記得一定要將Scripts目錄添加到環境變量 path。

執行上面的命令后會看到如下的日志信息,同時目錄下面會生成三個文件:log.htmloutput.xmlreport.html

(venv) bingo@Mac standard_case$ pybot hello.robot 
==============================================================================
Hello                                                                         
==============================================================================
test case1                                                            | PASS |
------------------------------------------------------------------------------
Hello                                                                 | PASS |
1 critical test, 1 passed, 0 failed
1 test total, 1 passed, 0 failed
==============================================================================
Output:  /Users/bingo/Hebinz/PY/RF/testcase/standard_case/output.xml
Log:     /Users/bingo/Hebinz/PY/RF/testcase/standard_case/log.html
Report:  /Users/bingo/Hebinz/PY/RF/testcase/standard_case/report.html

至此,我們的RF環境就搭建完成了,我們可以在瀏覽器中打開report.html:

用例編寫工具

RIDE

RIDE當前官方的僅支持Python2.x,雖然有開發者做了Python3版本的,但是不太穩定。

下載地址:https://github.com/HelioGuilherme66/RIDE/releases

pycharm IntelliBot

pycharm>File>setting>Plugins,搜索IntelliBot 即可

Eclipse RED

Red插件安裝:

Click Help -> Eclipse Marketplace -> and type into Find field "RED robot"
Click Help -> Install New Software -> Add and set address in Location to: 
http://master.dl.sourceforge.net/project/red-robot-editor/repository

初學者推薦使用RED,這個是諾基亞開源的插件。更多的插件大家可以訪問這個地址:https://robotframework.org/#tools

基本上主流的編輯器都能找到對應的:

運行測試

RF的用例一般都是以命令行的方式運行的,插件集成的運行最終也是體現到命令行上,所以我們一起了解一些它都有哪些運行方式。

運行文件中一條用例:

pybot --test test_case_name test_suit.robot

運行指定文件:

pybot test_suit.robot

運行當前目錄下以.robot為后綴名的測試文件

pybot *.robot

運行當前test_a目錄下的所有用例

pybot test_a

運行當前目錄及其子目錄所有用例

pybot ./    

運行指定tag的用例

pybot --include evalua request.robot

總結

  • Python3 venv
  • RF 安裝
  • 用例運行方式總結
  • 編輯器


免責聲明!

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



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