Selenium KPI接口 屏幕截图

屏幕截图功能常用的有两种:
savescreenshot()及 getscreenshotasfile()。

使用格式
self.driver.save_screenshot('baidu.png')
self.driver.getscreenshotasfile(filepath)

在项目中用到屏幕截图的地方基本使用场景为测试用例失败后保存失败的截图,帮助定位问题。

实现功能1
百度搜索成功后屏幕截图-通过save_screenshot方法。

实现代码:

#导入相关包
from time import sleep
from selenium import webdriver

class Testcase():
  #打开百度
    def __init__(self):
        self.driver=webdriver.Chrome()
    driver.get('https://www.baidu.com')
    
       def test4(self):
        self.driver.find_element_by_id('kw').send_keys('nihao ')
        self.driver.find_element_by_id('su').click()
        sleep(2)
        #屏幕截图
        self.driver.save_screenshot('baidu.png')
        sleep(2)

if __name__ == '__main__':
    case=Testcase()
    case.test4()

实现功能2
百度搜索成功后屏幕截图,保存到指定路径,以当前时间命名

实现代码:

#导入相关包
from time import sleep
from selenium import webdriver
import os
from time import sleep, time, localtime, strftime

 def test4(self):
        self.driver.find_element_by_id('kw').send_keys('nihao ')
        self.driver.find_element_by_id('su').click()
        sleep(2)
        #获取当前时间
        str=strftime("%Y-%m-%d-%H-%M-%S",localtime(time()))
        #png格式命名
        file_name=str+'.png'
    #获取路径
        path=os.path.abspath('screenshot')
        #路径名+文件名拼接
        file_path=path+'/'+file_name
        #截图操作
        self.driver.get_screenshot_as_file(file_path)
        
 
if __name__ == '__main__':
    case=Testcase()
    case.test4()

posted on   平凡之测  阅读(67)  评论(0编辑  收藏  举报

编辑推荐:
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
阅读排行:
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
< 2025年3月 >
23 24 25 26 27 28 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 26 27 28 29
30 31 1 2 3 4 5

导航

统计

点击右上角即可分享
微信分享提示