python+selenium自动化测试——切换句柄

Posted 一蓑烟雨任平生

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python+selenium自动化测试——切换句柄相关的知识,希望对你有一定的参考价值。

 

当自动化运行时,出现新的标签页,需要访问新标签页的元素,需要切换句柄;

handles = driver.window_handles   #返回的是列表对象
driver.switch_to.window(handles[1]) #切换到第二个新标签页

为了防止标签页过多,导致句柄过多,所以每次切换的时候,如果不需要保存,则优先关闭旧的页面。

# 定位元素,输入python
driver.find_element_by_id(‘kw‘).send_keys(‘python‘)
driver.find_element_by_id(‘su‘).click()
driver.find_element_by_xpath(‘//*[@id="2"]/h3/a‘).click()
# 切换标签页,handles
handles = driver.window_handles #返回的是一个列表对象
# 关闭旧的标签页
driver.close()
driver.switch_to.window(handles[1]) #切换到新标签页

访问新标签页的元素
driver.find_element_by_xpath(‘/html/body/div[4]/div[2]/div/div[2]/div[4]/div/a[1]‘).click()




以上是关于python+selenium自动化测试——切换句柄的主要内容,如果未能解决你的问题,请参考以下文章

《selenium2 python 自动化测试实战》——切换窗口

Selenium3 + Python3自动化测试系列七——多窗口切换

关于Selenium3+python3.6自动化测试中iframe切换

Python3+Selenium3自动化测试学习之路

python page object怎么实现页面切换

基于selenium3+python3.4+chrome(57.8版本)自动化测试环境搭建