在自动化测试程序运行时,有些中央呈现了 bug,此时,咱们心愿能够将以后运行的屏幕的截图保留下来,不便开发者后续进行调试与修复。

Selenium 提供的屏幕截屏办法

序号办法/属性形容
1save_screenshot(filename)截取以后屏幕截图,并保留为指定文件,filename 为指定的保留门路或图片文件名
2get_screenshot_as_base64()获取以后屏幕截图 base64 编码字符串
3get_screenshot_as_file(filename)获取以后截图,应用残缺的门路
4get_screenshot_as_png()获取以后截图的二进制文件数据

实例操作

# 利用1:save_screenshot 间接保留在以后门路from selenium import webdriverfrom time import sleepdriver = webdriver.Chrome()  # 关上浏览器driver.get("https://www.baidu.com/")  # 跳转至测试页面sleep(1)element = driver.find_element_by_id("kw")  # 定位输入框element.send_keys("自动化测试")  # 输出内容sleep(1)driver.save_screenshot("baidu.png")  # 截屏sleep(2)driver.quit()  # 敞开浏览器
# 利用1:save_screenshot 应用以后工夫作为文件名from selenium import webdriverfrom time import sleep, strftime, localtime, timedriver = webdriver.Chrome()  # 关上浏览器driver.get("https://www.baidu.com/")  # 跳转至测试页面sleep(1)element = driver.find_element_by_id("kw")  # 定位输入框element.send_keys("自动化测试")  # 输出内容sleep(1)file_name = strftime("%Y%m%d-%H%M%S", localtime(time())) + ".png"driver.save_screenshot(file_name)  # 截屏sleep(2)driver.quit()  # 敞开浏览器