web自动化,如何实现frame表单切换?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了web自动化,如何实现frame表单切换?相关的知识,希望对你有一定的参考价值。

原理:
1. html中的iframe标签支持浏览器窗口显示多个页面。
2.iframe标签实质是外层页面的标签,若想操作iframe框架内嵌的页面,需要先定位到iframe标签上。
3. 通过switch_to.frame()切换到内层页面,再进行内层页面的操作。
4. 内层页面的操作办法和普通页面的操作办法相同:元素定位、元素操作。
操作:
1.若iframe具有id属性,直接使用id属性值切换进内层页面
2.若iframe具有id属性,直接使用id属性值切换进内层页面
3.定位到iframe元素,再切换进入
driver.switch_to.frame(xxxx) # xxxx是iframe标签的id、name或者是定位到的iframe标签元素
返回外层页面:
1.跳回最外层的页面:driver.switch_to.default_content()
2.跳回上层的页面: driver.switch_to.parent_frame()
以前在黑马程序员培训后,也会买他们出版的书,这个就是直接从书上看的。现在很多大学都用的他们的教材,我就会没事看看。反正说的挺详细的。
参考技术A 现在自动化想要实现表格的切换可以通过。查找一下如何能够切换。按键来进行替换。

Web自动化测试(表单跳转)

在网页中表单嵌套很常见,尤其是在登录的场景
什么是多表单
实际上就是使用iframe/frame,引用了其他页面的链接,真正的页面数据并没有出现在当前源码中,但是在浏览器中我们看到,简单理解可以使页面中开了一个窗口显示另一个页面

直接使用id值切换进表单
driver.switch_to.frame(value)/driver.switch_to_frame(value)

我们进入pycharm
先导入selenium包然后进行操作
我们这里使用qq空间的进行操作
在这里插入图片描述
我们要先找到这个表单的id实现表单跳转
在这里插入图片描述
switch_to.frame()该方法实现表单跳转
在这里插入图片描述

首先找到点击登录账户密码这个id
在这里插入图片描述
这个是点击登录的代码
在这里插入图片描述
然后点击跳转页面之后
查找到账号和密码的id
在这里插入图片描述
在pycharm里进行赋值
在这里插入图片描述
send_keys(值)
我们将自己的qq密码和账号的值通过这个语句给赋值进去
然后找到登录的id
在这里插入图片描述
在这里插入图片描述
通过click()点击事件进行操作
运行一下查看结果
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
登陆成功!!!

以上是关于web自动化,如何实现frame表单切换?的主要内容,如果未能解决你的问题,请参考以下文章

基于python实现UI自动化4. 一文搞定selenium 多表单(iframe/ frame)切换

Web自动化测试——代码篇七常用方法——切换

什么是frame表单,如何切换frame表单

WPF中, 如何实现 点击frame1里的page1按钮,切换frame2里的pages

web自动化如何实现多窗口切换?

Web自动化测试(表单跳转)