1. 程式人生 > 其它 >UI自動化之截圖

UI自動化之截圖

Webdriver自帶截圖功能,get_screenshot_as_file(),save_screenshot()

1、get_screenshot_as_file(),

該方式很簡單,通過driver獲取該方法,將截圖要儲存的路徑寫入就好,先看一張圖,沒執行程式碼的時候,Picture目錄下還沒有名為baidu.png的圖片,建個Picture目錄,是為了方便管理截圖的圖片

接下來執行程式碼,儲存的圖片如下:

可以看到,圖片是截圖成功了的,在對應資料夾下也是可以看到圖片的,程式碼如下:

這裡需要注意的是,檔案存放的路徑一定要正確,路徑中的\\雙斜槓,有一個是轉義符,這個就不多說了

這種方式寫法太過於死板,這樣執行下去,圖片名字會重名,達不到什麼好效果,可以生成程式碼執行的當前時間,來做為圖片名,這樣就不會再出現該問題了,修改程式碼如下:

程式碼執行後,檢視截圖的效果,如下:

該方法使用起來更加方便,算是一個小小優化

2、save_screenshot()

save_screenshot()與get_screenshot_as_file()方式都是一樣,先看一個小例子,程式碼如下:

執行該程式碼後,在當前目錄下會儲存成功一張名為baidu1.png的圖片,如下:

一種方式學會,另一種是不是很簡單了,接下來以這種截圖方式,來做個優化吧,先看程式碼:

該程式碼的優化,是自動建立日期目錄,並將擷取的圖片以年月日時分秒命名儲存在當前日期目錄下,這樣就能很方便的檢視圖片儲存路徑,也方便管理自己的測試圖片

執行程式碼,我們來檢視結果,如下:

這樣執行程式碼後,就自動生成了名為2018-09-16的資料夾,擷取的圖片命名為2018-09-16-16_14_18.png,並儲存在2018-09-16的資料夾下,如果明天執行該程式碼,就會生成新的資料夾,並命名為2018-09-17,這樣就很好的區分了圖片日期來源,如果再次執行該程式碼,就會提示資料夾已存在,圖片依然擷取成功,如下:

本文轉自https://www.cnblogs.com/hong-fithing/p/9656221.html