(一) 方法
方法 | 简单说明 |
---|---|
save_screenshot(filename) | 获取当前屏幕截图并保存为指定文件 filename:路径/文件名 |
get_screenshot_as_base64() | 获取当前屏幕截图base64编码字符串 |
get_screenshot_as_file(filename) | 获取当前屏幕截图,使用完整的路径。如果有任何IOerror,返回false,否则返回true filename:路径/文件名 |
get_screenshot_as_png() | 获取当前屏幕截图的二进制路径 |
(二) 屏幕截图示例(代码肯定会报错的哈,这里是为了演示测试失败时,自动截图的功能(比如有的时候弹出不应该有的警告或者错误信息什么的,就可以截图保留记录))
1 from selenium import webdriver
2 import unittest
3 from selenium.common.exceptions import NoSuchElementException
4 class Login(unittest.TestCase):
5 @classmethod
6 def setUpClass(cls):
7 cls.driver = webdriver.Chrome()
8 cls.driver.implicitly_wait(5)
9 cls.driver.maximize_window()
10 cls.driver.get("https://www.cnblogs.com/")
11
12 def test_login(self):
13 try:
14 login_area = self.driver.find_element_by_css_selector('#login_area')
15 register = login_area.find_element_by_link_text('注册111')
16 register.click()
17 except NoSuchElementException:
18 #找不到元素时,截图
19 self.driver.save_screenshot('image/test_login/test_login_area.png')
20 raise
21
22 @classmethod
23 def tearDownClass(cls):
24 cls.driver.quit()
相应的文件目录下可以看到图片