xpath定位--切换frame/窗口

在web自动化中,有时候我们界面上明明定位到了该元素,但是就是点击不到,怎么回事?

--可能是没有切换到对应的frame或者没有切换到对应窗口!!!

切换frame用于在同一个窗口中切换到frame上下文,以便操作frame中的元素;

切换窗口用于在不同的窗口之间切换,以便在不同的窗口中进行操作;

目录

一、切换frame

1、什么是frame

2、怎么找到frame

3、切换frame

二、切换窗口


一、切换frame

1、什么是frame

理解浏览器中的frame可以类比为在一个网页中嵌套了其他网页。就像一个画面被分割成多个小画面,每个小画面可以加载不同的内容。每个frame都有自己的文档对象模型(DOM),可以包含独立的HTML、CSS和JavaScript代码。

frame在现代Web开发中已经不再常用,因为它们存在一些问题,如SEO(搜索引擎优化)困难、页面布局复杂等。现在更常用的做法是使用CSS和JavaScript来实现网页的布局和交互效果,而不是依赖frame来划分内容区域。

2、怎么找到frame

2.1、浏览器中打开开发者工具,定位元素,定位到元素以后,向上层级找,是否存在frame标签;

2.2、浏览器中打开开发者工具,定位元素,定位到元素以后,看底部栏是否有frame标志;

3、切换frame

在一个网页中,如果存在frame或iframe,需要切换到相应的frame才能对其进行操作。切换frame的目的是将自动化操作的焦点从当前的上下文切换到frame中,以便能够对frame中的元素进行定位和操作。

比如:

1、上图中我们想要点击 请输入查询关键字 这里,就必须先 切换frame 到 id="lookupwindow"这个框架下面;

2、接下来要点击 确定 按钮,就必须先 切换到上级frame;

二、切换窗口

在Web应用程序中,可能会打开多个浏览器窗口或标签页。切换窗口的目的是将自动化操作的焦点从当前窗口切换到另一个窗口,以便能够在不同的窗口中进行操作。

比如:

下面这个点击 2024,以奋斗起笔 打开了一个新的浏览器窗口,如果我们想要操作打开的新窗口,就必须先 切换窗口;

相关推荐
yaosheng_VALVE1 小时前
稀硫酸介质中 V 型球阀的材质选择与选型要点-耀圣
运维·spring cloud·自动化·intellij-idea·材质·1024程序员节
幸运的星竹2 小时前
使用pytest+openpyxl做接口自动化遇到的问题
python·自动化·pytest
测试界的酸菜鱼8 小时前
使用 Python + Vue 搭建自动化平台的核心要点
vue.js·python·自动化
IT-民工211108 小时前
Ansible剧本检测Windows防火墙状态
linux·运维·windows·自动化·ansible
卤吓唬晤8 小时前
项目设计与验收
运维·笔记·学习·自动化
爱搞技术的猫猫10 小时前
实现API接口的自动化
大数据·运维·数据库·性能优化·自动化·产品经理·1024程序员节
何曾参静谧14 小时前
「Py」Python基础篇 之 Python都可以做哪些自动化?
开发语言·python·自动化
测试小小怪下士15 小时前
怎么用Python+selenium自动化生成测试报告
selenium·测试工具·自动化
腾科张老师17 小时前
为什么要使用Ansible实现Linux管理自动化?
linux·网络·学习·自动化·ansible
loong_XL17 小时前
automa 浏览器自动化工具插件
运维·自动化