對於UI自動化而言,當出現異常的時候,我們需要能夠圖文並茂的展示出異常的情況。文---就是log日志了 ,圖---就是截圖了
當用例執行過程中出現異常的時候怎么去截圖並保存呢,寫點之前的東西,記錄一下
from selenium import webdriver import unittest class ApitestStudy(unittest.TestCase): # 找到瀏覽器驅動並執行 def setUp(self): self.driver = webdriver.Chrome(executable_path = "F:\Python\Scripts\chromedriver.exe") # 執行測試用例 def test_captureScreenInCurrentWindow(self): url = "https://www.baidu.com/" self.driver.get(url) try: result = self.driver.get_screenshot_as_file(r"H:\gjp\異常截圖.png") print(result) except IOError as e: print(e) def tearDown(self): # 退出瀏覽器 self.driver.quit() if __name__ == "__main__": unittest.main()
截圖結果:
實現原理:調用 get_screenshot_as_file(“fillname”)方法,實現對瀏覽器當前打開的頁面進行截圖操作。並保存在指定路徑下的文件中
更多說明:
1、調用截圖函數get_screenshot_as_file() 截圖成功后會返回Ture,如果發生了IOError異常,會返回false。函數中傳遞的存放圖片的路徑可以是絕對路徑也可以是相對路。
2、當自動化執行過程中,為實現預期結果,可以將頁面圖片截圖保存,方便快速的定位問題,做到圖文並茂的去說明問題。