selenium 定位 页面上两个完全一样的元素

在测试过程中发现页面上有两个保存按钮的元素的xpath一模一样,如下图:

google了好久才找到解决办法,发现自己还是比较弱!!!解决方法如下:

selenium.click("xpath=(//button[.=‘保存‘])[last()]");

使用 last() 这个函数(我去,xpath还支持函数!!!)

其它函数请查看下面的网页:http://automationtricks.blogspot.com/2010/09/how-to-locate-element-which-have-same.html

--------------------- 本文来自 su1322339466 的CSDN 博客 ,全文地址请点击:https://blog.csdn.net/su1322339466/article/details/51770326?utm_source=copy

原文地址:https://www.cnblogs.com/peachh/p/9739971.html

时间: 2024-11-07 16:59:07

selenium 定位 页面上两个完全一样的元素的相关文章

使用WdatePicker时间插件限制页面上两个时间的前后范围

大多时候,开始时间&结束时间都是开始时间肯定不能大于结束时间,结束时间不能比开始时间还早吧,用WdatePicker插件选择时间的话可以很好的做好时间段的控制. 页面上的两个时间输入框: 开始时间: <input type="text" name="startDate" id="startDate" onclick="WdatePicker({dateFmt:'yyyy-MM-dd'})" /> 结束时间:

【selenium学习笔记一】python + selenium定位页面元素的办法。

1.什么是Selenium,为什么web测试,大家都用它? Selenium设计初衷就是为web项目的验收测试再开发.内核使用的是javaScript语言编写,几乎支持所以能运行javaScript的浏览器,支持windows\linux\macos等各种平台. Selenium 脚本是用多种受支持的编程语言中的一种编写的 —— 目前可用的有 Java.Ruby 和 Python 驱动程序.这些脚本在浏览器之外的一个单独的进程中运行.驱动程序的任务是执行测试脚本,并通过与运行在浏览器中的 bro

python + selenium定位页面元素的办法

1.什么是Selenium,为什么web测试,大家都用它? Selenium设计初衷就是为web项目的验收测试再开发.内核使用的是javaScript语言编写,几乎支持所以能运行javaScript的浏览器,支持windows\linux\macos等各种平台. Selenium 脚本是用多种受支持的编程语言中的一种编写的 -- 目前可用的有 Java.Ruby 和 Python 驱动程序.这些脚本在浏览器之外的一个单独的进程中运行.驱动程序的任务是执行测试脚本,并通过与运行在浏览器中的 bro

Python+Selenium 定位页面元素

1.跳转到Frame/Iframe ,再定位元素理解:frame的实质,frame中实际上是嵌入了另一个页面,而webdriver每次只能在一个页面识别,因此需要先定位到相应的frame,对那个页面里的元素进行定位 1.1方法一如果iframe有name或id的话,直接使用switch_to_frame("name值")或switch_to_frame("id值").如下:driver=webdriver.Firefox()driver.get(r'http://w

selenium IDE(五)selenium 命令之定位页面元素

定位页面元素 对于很多selenium命令,target域是必须的.Target在web页面范围内识别UI元素,它使用locatorType=location的格式.在很多情况下,locatorType可以省略,下面举例方式来描述各种类型的locatorType. 假如,有如下一段HTML代码: html> <body> <form id= "loginForm" > <input name= "username" type= &

Selenium 定位网页元素

第一 定位元素辅助工具 IE中在元素上右击 ->  “检查元素”,或按F12键打开开发者工具: Chrome中在元素上右击 -> “审查元素”,或按F12键打开开发者工具: Firefox中在元素上右击 -> “检查元素”,或安装插件Firebug打开开发者工具: http://getfirebug.com/ Firefox中可以安装xPathChecker通过xpath定位页面上元素. https://addons.mozilla.org/zh-CN/firefox/addon/xpa

selenium 定位方式

在使用selenium webdriver进行元素定位时,通常使用findElement或findElements方法结合By类返回的元素句柄来定位元素.其中By类的常用定位方式共八种,现分别介绍如下. 1. By.name() 假设我们要测试的页面源码如下: <button id="gbqfba" aria-label="Google Search" name="btnK" class="gbqfba"><

Selenium定位不到指定元素原因之iframe(unable to locate element)

浏览过程中,图片中的内容可能太小,无法看清,可以>右键>在新标签中打开 Outline 项目原因,需要用selenium实现模拟登陆.模拟上传文件,自然就需要模拟点击[上传]按钮: 模拟点击之前需要通过selenium提供的“方法”去定位到要点击的元素: 模拟登陆过程中,全程都可以定位到需要点击的元素,但登陆后需要定位点击[上传]按钮时问题来了: 元素明明在那放着,就是定位不到,这个问题困扰了一下午还没解决,最终走到了iframe这个一步,才得以解决. 什么是iframe 解决问题之前很有必要

如何获取页面上的所有的标签元素?排除重复的。

这个问题应该这样比较好:如何统计页面上用了多少HTML标签元素. 这是我在知乎live上看到的问题,后来讨论了这个https://www.zhihu.com/question/53175578 很多人给出了答案,but,我思来想去也觉得很简单啊,写代码的时候发现完全不知如何下笔,还是菜啊- -! 比如我看到了一个回答 new Set($$("*").map(e => e.tagName)).size;是在控制台输出.可以得到总过用了多少html标签元素的个数. 我心想很简单啊,试