Robot Framework使用者指南
版本2.8.6 著作權©諾基亞解決方案和網路2008-2014 根據 知識共用署名3.0 Unported許可授權
目錄 1開始 1.1簡介 1.2著作權和許可 1.3安裝說明 1.4示範 2建立測試資料 2.1測試資料文法 2.2建立測試案例 2.3建立測試套件 2.4使用測試庫 2.5變數 2.6建立使用者關鍵字 2.7資源和變數檔案 2.8進階功能 3執行測試案例 3.1基本用法 3.2測試執行 3.3後處理輸出 3.4配置執行 3.5建立輸出 4擴充機器人架構 4.1建立測試庫 4.2遠程庫介面 4.3使用監聽器介面 4.4擴充機器人架構Jar 5個支援工具 5.1庫文檔工具(libdoc) 5.2測試資料文檔工具(testdoc) 5.3測試資料清理工具(整潔) 5.4外部工具 6附錄 6.1測試資料中的所有可用設定 6.2所有的命令列選項 6.3測試資料範本 6.4文檔格式 6.5時間格式 6.6內部API 1開始 1.1簡介 1.2著作權和許可 1.3安裝說明 1.4示範 1.1簡介
Robot Framework是一個基於Python的,可擴充的關鍵字驅動的測試自動化架構,用於端到端驗收測試和接受度測試驅動開發(ATDD)。它可以用於測試分布式異構應用程式,其中驗證需要涉及多種技術和介面。 1.1.1為什麼使用Robot Framework。 1.1.2進階架構 1.1.3截圖 1.1.4擷取更多資訊 項目頁面 郵件清單 1.1.1為什麼使用Robot Framework。 以統一的方式建立便於使用的表格文法來建立測試案例。 提供從現有關鍵字建立可重用的更進階關鍵字的功能。 以HTML格式提供易於閱讀的結果報告和日誌。 平台和應用程式是獨立的。 提供一個簡單的庫API來建立自訂的測試庫,可以用Python或Java本地執行。 提供命令列介面和基於XML的輸出檔案, 用於整合到現有的構建基礎架構(持續整合系統)中。 為Web測試,Java GUI測試,運行進程,Telnet,SSH等提供對Selenium的支援。 支援建立資料驅動的測試案例。 內建對變數的支援,尤其適用於在不同環境下進行測試。 提供標記來分類和選擇要執行的測試案例。 實現與原始碼控制的輕鬆整合:測試套件只是可以用生產代碼進行版本化的檔案和目錄。 提供測試案例和測試套件的層級設定和拆卸。 模組化體繫結構支援建立測試,即使是具有多種不同介面的應用程 1.1.2進階架構
Robot Framework是一個通用的,應用程式和技術獨立的架構。它有一個高度模組化的架構,如下圖所示。
機器人架構結構
該測試資料是簡單,易於編輯表格格式。當Robot Framework啟動時,它處理測試資料,執行測試案例並組建記錄檔和報告。核心架構不知道任何關於被測試的目標,與它的互動由測試庫處理。庫可以直接使用應用程式介面,也可以使用底層的測試載入器作為驅動程式。 1.1.3截圖
以下螢幕截圖顯示了測試資料的樣本以及建立的 報告和日誌。
測試案例檔案
報告和日誌 1.1.4擷取更多資訊 項目頁面
尋找更多關於Robot Framework及其周圍豐富生態系統資訊的第一位是http://robotframework.org。Robot Framework本身託管在GitHub上。 郵件清單
有幾個機器人架構郵件清單在哪裡要求和搜尋更多的資訊。郵件清單檔案是為所有人(包括搜尋引擎)開放的,每個人都可以自由地加入這些列表。但是,只有列表成員才能發送郵件,並且為了防止垃圾郵件,新使用者將被主持,這意味著您的第一封郵件可能需要一些時間。不要害怕把問題發送到郵件清單,但記得如何提出問題的智能方式。 robotframework使用者 有關所有Robot Framework相關問題的一般性討論。問題和問題可以發送到這個列表。也用於所有使用者的資訊共用。 robotframework通告 只有公告人的郵件清單,只有版主可以發送郵件。所有公告也發送到robotframework-users郵件清單,所以不需要加入這兩個列表。 robotframework-devel的 關於Robot Framework開發的討論。 robotframework提交 自動產生關於提交到版本控制系統的郵件,構建結果,新的和編輯的問題等等。可以用來跟蹤Robot Framework的開發。 1.2著作權和許可
Robot Framework本身,與它一起分發的測試庫和支援工具,以及本使用者指南和其他提供的文檔都有以下著作權聲明。
著作權2008-2014諾基亞解決方案和網路根據Apache許可證2.0版(“許可證”)獲得許可;除遵守許可證外,不得使用此檔案。您可以在獲得許可證副本 http://www.apache.org/licenses/LICENSE-2.0除非適用法律要求或書面同意,軟體根據許可證分發的資料按“現狀”分發,沒有任何形式的保證或條件,無論是明示的還是暗示的。請參閱許可證以擷取有關許可權和許可權的特定語言根據許可證的限制。
1.3安裝說明
這些說明包括在不同的作業系統上安裝和卸載Robot Framework及其先決條件。如果你已經安裝了pip,那麼運行就足夠了:
點安裝robotframework
1.3.1簡介 1.3.2先決條件 Python安裝 Jython安裝 IronPython安裝 配置PATH 設定https_proxy 1.3.3安裝Robot Framework 包管理員(如點子) 從原始碼安裝 使用Windows安裝程式 獨立的JAR分發 手動安裝 驗證安裝 在哪裡安裝檔案 1.3.4卸載和升級 卸載 升級 1.3.5不同的進入點 跑步者指令碼 直接進入點
1.3.1簡介
Robot Framework是用Python實現的,也可以在Jython(JVM)和 IronPython(.NET)上運行。在安裝架構之前,一個明顯的先決條件是安裝至少一個這樣的解譯器。請注意,Python 3尚不支援,但有一個非官方的Python 3連接埠可用。
下面列出了安裝Robot Framework本身的不同方法,並在隨後的章節中進行更詳細的解釋。 包管理員(如點子)
Python包管理器使安裝變得微不足道。例如,pip使用者只需要執行:
點安裝robotframework
不過,使用包管理器會首先增加一個先決條件來安裝包管理器本身。 從原始碼安裝 無論使用的是作業系統還是Python解譯器,這種方法都可以工作。您可以通過從 PyPI下載和提取原始碼或複製 GitHub存放庫來擷取原始碼。 使用Windows安裝程式 有32位和64位Windows系統的圖形化安裝程式,都可以在 PyPI上找到。 獨立的JAR分發 如果使用Jython運行測試就足夠了,最簡單的方法是從 Maven central下載獨立的 robotframework- <version> .jar。JAR發行包含Jython和Robot Framework,因此只需要安裝 Java。 手動安裝 如果您有特殊的需求而沒有其他的工作,您可以隨時進行自訂手動安裝。 1.3.2先決條件
Robot Framework支援Python,Jython(JVM)和IronPython(.NET),也可以在PyPy上運行。在安裝架構之前應該安裝你想要使用的解譯器。
一般來說,使用哪種解譯器取決於所需的測試庫和測試環境。一些庫使用只能用於Python的工具或模組,而另一些則可能使用需要Jython或需要.NET的Java工具,因此需要使用IronPython。還有很多工具和庫可以和所有的解譯器一起運行。
如果您沒有特殊需求或者只是想嘗試架構,建議使用Python。這是最成熟的實現,比Jython或IronPython快得多(特別是啟動時間更快),並且在大多數類UNIX作業系統上也很容易獲得。另一個很好的選擇是使用僅以Java為前提的獨立JAR發行版。 Python安裝
在大多數類UNIX系統(如Linux和OS X)上,您預設安裝了Python。如果你使用的是Windows,或者需要自己安裝Python,那麼一個好的開始是http://python.org。在那裡,你可以下載一個合適的安裝程式,並獲得有關安裝過程和Python的更多資訊。
Robot Framework目前支援Python版本2.5,2.6和2.7。計劃將來也會支援Python 3,同時Python 2.5的支援將會被拋棄。Robot Framework 2.0和2.1支援Python 2.3和2.4。
在Windows上,建議將Python安裝到所有使用者,並以管理員身份運行安裝程式。另外,不能設定環境變數 PYTHONCASEOK。
安裝Python之後,您可能仍然需要配置PATH以使命令提示字元下的pybot runner指令碼可執行。 Jython安裝
使用用Java實現的測試庫或內部使用Java工具的測試庫需要在Jython上運行Robot Framework,而Jython又需要Java Runtime Environment(JRE)或Java Development Kit(JDK)。安裝這些Java實現中的任何一個都不在這些說明的範圍內,但是如果需要,您可以從http://java.com找到更多資訊。
安裝Jython是一個相當簡單的過程,第一步是從http://jython.org擷取安裝程式。安裝程式是一個可執行檔JAR包,可以像命令列一樣運行java -jar jython_installer-<version>.jar。根據系統配置,也可以雙擊安裝程式。
支援的最低Jython版本是2.5,需要Java 5(也稱為Java 1.5)或更新版本。即將到來的Jython 2.7將需要最少的Java 7,而且將來對於Jython 2.5的支援也將是Robot Framework的最低限度。Robot Framework 2.0和2.1支援Jython 2.2。
安裝Jython之後,您可能仍然需要配置PATH以在命令提示字元下使jybot runner指令碼可執行。 IronPython安裝
IronPython允許在.NET平台上運行Robot Framework,並與C#和其他.NET語言和API進行互動。只支援IronPython 2.7。
當使用IronPython時,額外的依賴項是安裝 elementtree 模組1.2.7預覽版。這是必需的,因為 使用IronPython分發的elementtree模組已經 損壞。您可以通過下載原始碼發行版,解壓縮並ipy setup.py install在建立的目錄中的命令提示字元下運行來安裝該程式包 。
安裝IronPython之後,您可能仍然需要配置PATH以使命令提示字元下的ipybot runner指令碼可執行。 配置PATH
該PATH環境變數列出其中在一個系統中執行的命令是從搜尋位置。為了使命令提示字元更容易使用Robot Framework,建議將運行器指令碼的安裝位置添加到PATH中。跑步者指令碼本身需要匹配的解譯器在PATH中,因此解譯器安裝目錄也必須添加到那裡。
在類似UNIX的機器上使用Python時,Python本身和安裝的指令碼都應該自動在PATH中,不需要額外的操作。在Windows和其他解譯器上,PATH必須單獨配置。 什麼目錄添加到PATH
需要將哪些目錄添加到PATH取決於解譯器和作業系統。第一個位置是解譯器的安裝目錄(例如C:\ Python27),另一個位置是解譯器安裝指令碼的位置。Python和IronPython都將指令碼安裝到Windows安裝目錄下的Scripts目錄(例如C:\ Python27 \ Scripts),Jython使用bin 目錄而不管作業系統(例如C:\ jython2.5.3 \ bin)。
請注意,指令碼和bin目錄可能不會作為解譯器安裝的一部分建立,而只是在稍後安裝Robot Framework或其他第三方模組時才建立。 在Windows上設定PATH
在Windows上,您可以按照以下步驟配置PATH。請注意,確切的設定名稱可能在不同的Windows版本上有所不同,但基本方法應該仍然是相同的。 開啟Start > Settings > Control Panel > System > Advanced > Environment Variables。有User variables和System variables,和它們的區別是使用者變數隻影響目前使用者,而系統變數影響所有使用者。 要編輯現有的PATH值,請在值(例如)的末尾 選擇Edit並添加 。請注意分號()在分離不同的條目時非常重要。要添加一個新的PATH 值,選擇並設定名稱和值,這次沒有前置分號。;<InstallationDir>;<ScriptsDir>;C:\Python27;C:\Python27\Scripts;New 退出對話方塊Ok以儲存更改。 啟動新的命令提示字元以使更改生效。
請注意,如果你安裝了多個版本的Python,在執行 pybot指令碼總是會使用一個是第一個在PATH 無論在什麼樣的Python版本該指令碼安裝。為了避免這種情況,您可以隨時使用直接進入點和解譯器C:\Python26\python.exe -m robot.run。
還要注意,你不應該在你添加到PATH中的目錄周圍添加引號(例如"C:\Python27\Scripts")。引號可能會導致Python程式出現問題,即使目錄路徑包含空格,PATH也不需要它們。 在類UNIX系統上設定PATH
在類UNIX系統上,通常需要編輯某個系統範圍或使用者特定的設定檔。要編輯哪個檔案以及如何依賴於系統,並且需要查閱作業系統文檔以擷取更多詳細資料。 設定https_proxy
如果您打算使用pip進行安裝並位於代理之後,則需要設定https_proxy環境變數。在安裝pip和使用它來安裝Robot Framework和其他Python包時都需要它。
如何設定https_proxy取決於作業系統,類似於 配置PATH。此變數的值必須是代理的URL,例如http://10.0.0.42:8080。 1.3.3安裝Robot Framework 包管理員(如點子)
最流行的P