selenium對瀏覽器自動截圖


對於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、當自動化執行過程中,為實現預期結果,可以將頁面圖片截圖保存,方便快速的定位問題,做到圖文並茂的去說明問題。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM