在自动化测试程序运行时,有些中央呈现了 bug
,此时,咱们心愿能够将以后运行的屏幕的截图保留下来,不便开发者后续进行调试与修复。
Selenium 提供的 屏幕截屏办法:
序号 | 办法 / 属性 | 形容 |
---|---|---|
1 | save_screenshot(filename) |
截取以后屏幕截图,并保留为指定文件,filename 为指定的保留门路或图片文件名 |
2 | get_screenshot_as_base64() |
获取以后屏幕截图 base64 编码字符串 |
3 | get_screenshot_as_file(filename) |
获取以后截图,应用残缺的门路 |
4 | get_screenshot_as_png() |
获取以后截图的二进制文件数据 |
实例操作
# 利用 1:save_screenshot 间接保留在以后门路
from selenium import webdriver
from time import sleep
driver = 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 webdriver
from time import sleep, strftime, localtime, time
driver = 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() # 敞开浏览器