自动化用例是由程序去执行的,因此有时候打印的错误信息并不十分明确。如果在脚本执行出错的时候能对当前窗口截图保存,那么通过图片就可以非常直观地看出出错的原因。WebDriver提供了截图函数get_screenshot_as_file()来截取当前窗口。
from selenium import webdriver
from time import sleep
driver = webdriver.Firefox()
driver.get(“http://www.baidu.com”)
driver.find_element_by_id(“kw”).send_keys(“selenium”)
driver.find_element_by_id(“su”).click()
#截取当前窗口,并指定截图图片的保存位置(注:图片保存的后缀名保存格式为.png)
driver.get_screenshot_as_file(“D:\baidu.png”)
driver.quit()
脚本运行完成后打开D盘,就可以找到baidu.png图片文件啦。
注:如果文件的后缀名保存格式为.jsp,脚本运行会抛出一个警告,但是图片还是能够正常保存到指定的目录下。
抛出的异常如下: