天天看點

Robot Framework之截屏功能的實作

一、截屏功能

測試執行過程中進行截屏并且儲存,是任何一款自動化測試工具或者架構必備的功能。那麼Robotframework如何進行截屏呢?Robotframework提供了一個“Screenshot”庫。

使用“Screenshot”庫前,需要确認你搭建的環境(本人是window環境)中是否已經安裝以下軟體:

wxPython (位址 http://wxpython.org)

Python Imaging Library (PIL) (位址 http://www.pythonware.com/products/pil)

安裝完畢後,先引入該測試庫:Library    Screenshot

Robot Framework之截屏功能的實作

Screenshot庫

二、Screenshot庫解析

“Screenshot”庫有3個關鍵字:Set Screenshot Directory、Take Screenshot、Take Screenshot Without Embedding。

第一個關鍵字Set Screenshot Directory是設定截屏圖檔儲存的路徑,例如:

Set Screenshot Directory  ${CURDIR} 就是指将圖檔儲存在測試用例的目錄下。

還有另外一種方式是在引入“Screenshot”庫時設定路徑,例如:

Library    Screenshot ${CURDIR}也同樣是設定圖檔儲存路徑為目前目錄。

後兩個關鍵字Take Screenshot、Take Screenshot Without Embedding是用來截屏并儲存的。

差別是:

第一個截屏後,圖檔将顯示在報告中,它用于截取目前視窗;

第二個截屏後,報告中隻有圖檔的連結。

截屏圖檔預設儲存為“screenshot_n.jpg”這樣的檔案,n=1、2、3,依次類推。Robotframework會自動保證檔案命名的唯一。

你也可以手工命名圖檔的名稱,例如:Take Screenshot  pic.jpg  就是将圖檔儲存為“pic.jpg”。截屏圖檔如果很大,嵌入報告中會顯得不好看。Robotframework允許指定圖檔的大小,例如:Take Screenshot  width=500px  就是标明圖檔儲存為500像素。

三、示例Demo

Robot Framework之截屏功能的實作

示例Demo

執行結果:

Robot Framework之截屏功能的實作

執行結果