解决display:none

2023-10-27

selenium:解决页面元素display:none的方法

在UI自动化测试中,有时候会遇到页面元素无法定位的问题,包括xpath等方法都无法定位,是因为前端元素被设置为不可见导致。

这篇博客,介绍下如何通过JavaScript修改页面元素属性来定位的方法。。。

1、具体问题

常见的页面元素不可见导致的不可定位,都是由于下面的问题:

通过查看相关文档,可以看出display:none方法是设置元素不可见,这就是导致为什么通过定位页面元素无法定位的原因。
在这里插入图片描述
关于display更多的信息,可以看这里:HTML DOM display用法

2、解决方案

对于这种问题,可以通过JavaScript修改页面元素属性来将元素置位可见,然后通过id、classname等方法去定位,示例代码如下(针对上图所示):

js = “document.getElementById(“txtPassword”).style.display=‘block’;”

调用js脚本

#修改js隐藏内容为可见内容
js = "document.getElementById(\"cate_item1\").style.display='block';"
web.execute_script(js)
sleep(3)
#定位隐藏内容进行点击
web.find_element_by_xpath('//*[@id="cate_item2"]/div[1]/div[2]/dl[2]/dd/a[2]').click()
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

解决display:none 的相关文章

随机推荐

  • 索引原理学习

    一 介绍 1 什么是索引 一般的应用系统 读写比例在10 1左右 而且插入操作和一般的更新操作很少出现性能问题 在生产环境中 我们遇到最多的 也是最容易出问题的 还是一些复杂的查询操作 因此对查询语句的优化显然是重中之重 说起加速查询 就不
  • linux安装jdk tar包

    1 java删除openJDK rpm qa grep java rpm e nodeps 查出来的java软件 例 rpm e nodeps java 1 8 0 openjdk headless 1 8 0 101 3 b13 el7
  • Elasticsearch好用查询插件分享

    以前我常用的ES查询工具是Head 作为插件形式在浏览器中运行 挺方便的 后来发现head不太好用 比如在数据浏览的时候 不小心就点击了两个索引 背景色设置的还不够明显 比较容易看错数据的 于是想找个更好用的工具 以前用过cerebro 觉
  • Linux内核学习(二):Bootloader

    Linux内核学习 二 UBOOT 在上一篇的文章中通过图片介绍了linux镜像的生成与加载 引出了一个东西叫uboot 是这个玩意一手把生成的内核镜像加载进去的 于是在进一步之前 我们得看看学习一下什么是Uboot 以及其工作流程和逻辑
  • com.google.common.base.Preconditions

    前提条件 Guava提供了许多前置条件检查实用程序 我们强烈建议您静态导入这些内容 每种方法都有三种变体 没有额外的争论 抛出任何异常都没有错误消息 一个额外的Object论点 抛出任何异常并显示错误消息 object toString 一
  • 【Linux】冯诺依曼体系结构思想

    冯诺依曼体系结构 冯诺依曼体系结构 冯诺依曼体系结构的五大部分 冯诺依曼体系结构的运行过程 存储器中的木桶效应 扩展 计算机存储设备金字塔 实例 qq聊天数据传输过程 小结 博客主页 小智 x0 0x 欢迎关注 点赞 收藏 留言 系列专栏
  • UnityVR--组件10--UGUI简单介绍

    目录 前言 UI基础组件 1 Canvas 2 EventSystem 3 Image 4 Text TextMeshPro InputField 5 Button控件 其他 前言 UGUI是Unity推出的新的UI系统 它与Unity引擎
  • 2023年第47届(第二届)浙江技能大赛网络安全项目 (世赛省选拔赛)C模块任务书

    2023年第47届 第二届 浙江技能大赛网络安全项目 世赛省选拔赛 C模块任务书 模块C 夺旗挑战赛 1竞项赛目简介 1 1 介绍 1 2环境和目标 1 2 1 CTF 架构 1 2 2 挑战 1 3 评分方案 1 4 工作流程 2竞赛项目
  • Unity接入GooglePlay服务

    请大家关注我的微博 NormanLin BadPixel坏像素 前置条件 Google开发者账号 需要支持Visa的信用卡 java与Android开发环境的搭建 Unity上连接AndroidSDK与Java jdk AndroidSDK
  • 毕业设计-基于机器学习的双目测距系统-OpenCV

    目录 前言 课题背景和意义 实现技术思路 一 系统环境要求与流程图 二 摄像机模型和标定 四 立体匹配与测距 五 测距系统实验结果 实现效果图样例 最后 前言 大四是整个大学期间最忙碌的时光 一边要忙着备考或实习为毕业后面临的就业升学做准备
  • 由动态库文件dll生成lib库文件

    本文基于OpenBlas的编译和安装 来说明怎样从一个dll文件生成lib库文件 參考OpenBlas的说明 Howto generate import library for MingW 和MinGW的说明HOWTO Create an
  • 揭秘前端文件上传原理(二)

    上一篇文章讲到了以Form表单 将文件数据编码为特定的类型 来作为前端文件上传的载体 这一篇再来看看 如果不使用Form表单 不以FormData去提交数据 我们又将如何上传文件到云端呢 Form表单的意义 首先来想一想 Form表单对文件
  • 详解 七大经典排序算法

    文章目录 概念 代码 一 插入排序 直接插入排序 希尔排序 二 选择排序 选择排序 堆排序 三 交换排序 冒泡排序 快速排序 四 归并排序 归并排序递归 归并排序非递归 法一 法二 五 非比较排序 计数排序 排序算法总结 复杂度和稳定性 效
  • mysql故障记录以及binlog2sql学习使用

    mysql两次故障记录 centos7 4和7 5 一 故障描述 故障一 mysql主库的vip漂移到了备库 20分钟后后人工切换了回来 由于不是主主同步模式 所以主库缺失了这写入备库的20分钟的数据 故障二 有人员误删生产库中某个表的几百
  • OAuth 简介

    OAuth是一个在不提供用户名和密码的情况下 授权第三方应用访问Web资源的安全协议 常用的应用 OAuth 的场景 一般是某个网站想要获取一个用户在第三方网站中的某些资源和服务 比如在人人网上 想要导入用户MSN里的好友 在没有OAuth
  • lua 的 table表 大小、元素个数 #操作 的体会【结论是错误的, 此后再更新】

    有个体会 lua table 的 操作 是针对 table insert table remove 这一对操作的 操作数维护 每次调用 table insert 都会是 操作值增加 这是我自己的表达 即使 用 table 取得表的 返回值
  • requests上传和flask接收OpenCV的图片数据

    方式一 从本地读取到图片或帧 上传到flask服务器 客户端发送 def image post data type code type code area id area id 以文件的格式上传 节省传输时间 file file file
  • 腾讯云技术大牛教你,MySQL内核深度优化

    作者介绍 简怀兵 腾讯云数据库高级工程师 负责腾讯云CDB内核及基础设施建设 先后供职于Thomson Reuters和YY等公司 PTimeDB作者 曾获一项发明专利 从事MySQL内核开发工作8年 具有丰富的优化经验 在分布式存储等领域
  • main(int argc, char **argv)中argc和argv的具体含义,以及操作系统如何处理它们

    main int argc char argv 中argc和argv的具体含义 以及操作系统如何处理它们 请高手详细解释一下 谢谢 1 argc 参数的个数 argv 参数的字符串形式的数组 2 C C code int main int
  • 解决display:none

    selenium 解决页面元素display none的方法 在UI自动化测试中 有时候会遇到页面元素无法定位的问题 包括xpath等方法都无法定位 是因为前端元素被设置为不可见导致 这篇博客 介绍下如何通过JavaScript修改页面元素