selenium多表单切换以及多窗口切换、警告窗处理
selenium表单切换
在做UI自动化,有时候要定位的元素属性在页面上明明是唯一的。却怎么也不执行对元素的操作动作,这时候多半是iframe表单在作怪。
- 切入表单:id
driver.switch_to_frame("id")
#id属性值切入表单 - 切入表单:name
driver.switch_to_frame("name")
#name属性值切入表单 - 切入表单默认取表单的id或name属性,如果没有id或name属性值,下通过xpath或css定位,然后再将定位对象传给switch_to_frame()
value = driver.find_element_by_xpath("//input[@text='kw']")
driver.switch_to_frame(value)
- 返回上级表单
driver.switch_to_parent_content()
- 返回最外层表单
driver.switch_to_default_content()
selenium窗口切换
- 获得当前窗口句柄
driver.current_window_handle
- 获得所有窗口句柄
driver.window_handles
- 切换到相应的窗口,跟切换表单类似
driver.switch_to_window("value")
警告窗处理
- 解除警告窗:dismiss()
driver_switch_to_alert().dismiss()
- 接受警告窗:accept
driver_switch_to_alert().accept()
- 获取警告窗文本信息:text
driver.switch_to_alert().text
- 发送文本信息到警告窗:send_keys()
driver.switch_to_alert().send_keys("value")
本文作者:香菜哥哥
本文链接:https://www.cnblogs.com/yizhipanghu/p/13475368.html
版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步