測試執行過程中進行截屏並且保存,是任何一款自動化測試工具或者框架必備的功能。那么Robotframework如何進行截屏呢?Robotframework提供了一個“Screenshot”庫。
使用“Screenshot”庫前,需要確認window環境中是否已經安裝以下軟件:
wxPython (地址 http://wxpython.org)
Python Imaging Library (PIL) (地址 http://www.pythonware.com/products/pil)
安裝完畢后,先引入該測試庫:
Library 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像素。