frame切换、多窗口切换

目标

1. 掌握切换frame的方法

2. 掌握多窗口切换的技巧

frame切换

frame:HTML页面中的一种框架,主要作用是在当前页面中指定区域显示另一页面元素;形式一:[了解]

<frameset  cols="25%,75%">

<frame  src="frame_a.htm">

<frame  src="frame_b.htm">

</frameset>

形式二:

<iframe  name="iframe_a"  src="demo_iframe.htm"  width="200"  height="200"></iframe>

1.1 为什么要学习frame切换

案例:打开‘注册实例.html’页面,完成以下操作

1). 填写主页面的注册信息

2). 填写注册页面A中的注册信息

3). 填写注册页面B中的注册信息

问题

1.  当前页面内无法定位注册页面A和注册页面B

frame切换方法

说明:在Selenium中封装了如何切换frame框架的方法

 

方法:

1).  driver.switch_to.frame(frame_reference)        -->  切换到指定frame的方法

frame_reference:可以为frame框架的name、id或者定位到的frame元素

2).  driver.switch_to.default_content()   > 恢复默认页面方法

 

在frame中操作其他页面,必须先回到默认页面,才能进一步操作

1.1 案例解决方案

1. 完成主页面注册信息;

2. 调用frame切换方法(switch_to.frame("myframe1"))切换到注册用户A框架中

3. 调用恢复默认页面方法(switch_to.default_content())

4. 调用frame切换方法(switch_to.frame("myframe2"))切换到注册用户B框架中

1.1 frame切换-总结

1. HTML中常用的frame框架

2. 切换框架的方法

3. 恢复到默认页面的方法

多窗口切换

说明:在HTML页面中,当点击超链接或者按钮时,有的会在新的窗口打开页面。

1.1 为什么要切换窗口?案例

需求:打开‘注册实例.html’页面,完成以下操作

1). 点击‘注册A页面’链接

2). 在打开的页面中,填写注册信息

问题

1).  无法定位注册A页面中的元素

1.1 如何实现多窗口切换?

说明:在Selenium中封装了获取当前窗口句柄、获取所有窗口句柄和切换到指定句柄窗口的方法;

句柄:英文handle,窗口的唯一识别码

方法:

1).  driver.current_window_handle

--> 获取当前窗口句柄

 

案例解决方案分析

1. 获取‘注册实例.html’当前窗口句柄

2. 点击‘注册实例.html’页面中注册A页面

3. 获取所有窗口句柄

4. 获取注册A页面对应的窗口句柄,并切换

5. 操作注册A页面元素

1.1 多窗口切换-总结

1. 什么是句柄?

2. 获取当前窗口句柄方法

3. 获取所有窗口句柄方法

4. 切换指定句柄窗口方法

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值