selenium(八)窗口切换及截图

1.多窗口切换
selenium中封装了获取当前窗口句柄,获取所有窗口句柄和切换到指定句柄窗口的方法:
句柄:handle 是操作系统随机生成的随机字符串
方法:
    driver.current_window_handle       获取当前窗口句柄
    driver.window_handles              获取所有窗口句柄,该方法的返回值类型为列表形式
    driver.switch_to.window(handle)    切换指定句柄窗口

import time
from selenium import webdriver

driver = webdriver.Chrome()
driver.maximize_window()
driver.implicitly_wait(10)
# 访问网站并打开多个窗口
driver.get("https://www.csdn.net/")
driver.find_element_by_xpath('//a[@target="_blank"]/p').click()
time.sleep(3)
# 获取当前窗口句柄信息
print(driver.current_window_handle)
# 获取所有句柄信息
list = driver.window_handles
print(list)    #可以用下标的方式获取指定窗口句柄
# 切换指定窗口
driver.switch_to.window(list[0])     # -1表示最后一个窗口
time.sleep(3)
2.窗口截图
一般使用场景在自动化测试用例执行失败了后使用截图功能,保存截图到指定位置
方法:
    driver.get_screenShot_as_file(filename)
    截图中的文件名必须是png结尾
    储存的文件目录filename必须手动创建
# 结合try except的方式来捕获异常并截图
try:
    driver.find_element_by_xpath("000").click()
except Exception as e:
    # 报错后截图保存,保存在当前目录的pic文件夹中
    driver.get_screenshot_as_file('pic/error1.png')
    # 抛出异常
    raise e
driver.quit()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值