python自动化测试selenium屏幕截图示例
这篇文章主要为大家介绍了python自动化测试selenium屏幕截图示例实现,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步
WebDriver内置了测试中捕获屏幕并保存的方法。
示例脚本:
(1)save_screenshot(filename):保存屏幕截图
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | from selenium import webdriver from time import sleep,strftime,localtime,time import os class TestScreenShot( object ): def setup( self ): self .driver = webdriver.Chrome() self .driver.get( "http://www.baidu.com" ) def test_screen( self ): self .driver.save_screenshot( "testbaidu.png" ) def teardown( self ): self .driver.quit() if __name__ = = '__main__' : shot = TestScreenShot() shot.test_screen() |
(2)get_screenshot_as_base64():获取当前屏幕截图base64编码字符串
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | from selenium import webdriver from time import sleep,strftime,localtime,time import os class TestScreenShot( object ): def setup( self ): self .driver = webdriver.Chrome() self .driver.get( "http://www.baidu.com" ) def test_screen( self ): self .driver.save_screenshot( "testbaidu.png" ) print ( self .driver.get_screenshot_as_base64()) def teardown( self ): self .driver.quit() if __name__ = = '__main__' : shot = TestScreenShot() shot.test_screen() |
运行结果:
(3)get_screenshot_as_file(filename):获取当前屏幕截图,使用完整路径
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | from selenium import webdriver from time import sleep,strftime,localtime,time import os class TestScreenShot( object ): def setup( self ): self .driver = webdriver.Chrome() self .driver.get( "http://www.baidu.com" ) def test_screen( self ): self .driver.get_screenshot_as_file( "testbaidu2.png" ) def teardown( self ): self .driver.quit() if __name__ = = '__main__' : shot = TestScreenShot() shot.test_screen() |
(4)get_screenshot_as_file(filename):获取当前屏幕截图,使用完整路径,文件名以时间命名
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 | from selenium import webdriver from time import sleep,strftime,localtime,time import os class TestScreenShot( object ): def setup( self ): self .driver = webdriver.Chrome() self .driver.get( "http://www.baidu.com" ) def test_screen( self ): # print(self.driver.get_screenshot_as_png()) # self.driver.get_screenshot_as_file("testbaidu2.png") # self.driver.save_screenshot("testbaidu.png") # print(self.driver.get_screenshot_as_base64()) self .driver.find_element_by_id( "kw" ).send_keys( "selenium test" ) self .driver.find_element_by_id( "su" ).click() str = strftime( "%Y-%m-%d-%H-%M-%S" ,localtime(time())) filename = str + ".png" path = os.path.abspath( "screenshots" ) filepath = path + '/' + filename self .driver.get_screenshot_as_file(filepath) print (filepath) def teardown( self ): self .driver.quit() if __name__ = = '__main__' : shot = TestScreenShot() shot.test_screen() |
(5)get_screenshot_as_png():获取当前屏幕截图的二进制文件数据
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | from selenium import webdriver from time import sleep,strftime,localtime,time import os class TestScreenShot( object ): def setup( self ): self .driver = webdriver.Chrome() self .driver.get( "http://www.baidu.com" ) def test_screen( self ): print ( self .driver.get_screenshot_as_png()) def teardown( self ): self .driver.quit() if __name__ = = '__main__' : shot = TestScreenShot() shot.test_screen() |
运行结果:
以上就是python自动化测试selenium屏幕截图示例的详细内容
原文链接:https://blog.csdn.net/aovenus/article/details/121180311