Selenium2用最简xpath查找元素
什么是xpath?
来自百度百科的解释:XPath即为XML路径语言,它是一种用来确定XML(标准通用标记语言的子集)文档中某部分位置的语言。XPath基于XML的树状结构,提供在数据结构树中找寻节点的能力。XPath 是 XML 路径语言,用来查询 XML 文档里中的节点。主流的浏览器都支持 Xpath,因为 HTML 页面在 DOM 中表示为 XHTML 文档。Xpath 语言是基于 XML 文档的树结构,并且提供了浏览树的能力,通过多样的标准来选择结点。Selenium WebDriver 支持使用 Xpath 表达式来定位元素。
xpath可以自己手动编写也可以通过刚才装的firepath插件直接获取到,但是通过工具获取的xpath值不具有稳定性。比如一个html元素 有很多div或者span,你当前用工具获取的xpath值是:/html/body/div[3]/div[1]/div/div[1]/div/form/span[2]/input,但是当某个div由于设计需求不需要了去掉了,那么这个元素的xpath再用工具获取就又不一样了。所以不建议用工具直接去取xpath。
如果非要用工具去获取的话,firepath也提供了一个方法:
在选中的元素源码处,鼠标右键,有个“复制最简xpath”,不过这个只适用于源码简单的元素。比如元素有id,name和classname等属性的时候。
最简xpath获取途径:

记录自己的点滴,同时也希望能帮到大家。
Selenium2用最简xpath查找元素的更多相关文章
- 【RF库XML测试】通过xpath查找元素的说明
Tag names:当仅使用1个tag的时候,xpath匹配具有该标签名称的所有直接子元素. Paths:通过/符号连接tag名称,例如second/child将匹配父元素second下所有的chil ...
- Python通过xpath查找元素通过selenium读取元素信息
#coding:utf-8 from selenium import webdriver import time url ='http://www.baidu.com' driver = webdri ...
- 使用xpath查找元素的子元素,找不到
List<WebElement> allUserList = driver.findElements(By.xpath("xxx")); for (WebElement ...
- Python 关于xpath查找XML元素的一点总结
关于xpath查找XML元素的一点总结 by:授客 QQ:1033553122 欢迎加入全国软件测试qq群:7156436 测试环境 Win7 64 python 3.4.0 实践出真知 代码 ...
- 『心善渊』Selenium3.0基础 — 6、Selenium中使用XPath定位元素
目录 1.Selenium中使用XPath查找元素 (1)XPath通过id,name,class属性定位 (2)XPath通过标签中的其他属性定位 (3)XPath层级定位 (4)XPath索引定位 ...
- Selenium-Python学习——通过XPath定位元素
用Xpath定位元素的方法总是记不住,经常要翻出各种文档链接参考,干脆把需要用到的内容整到这个笔记中方便查找. Xpath是在XML文档中定位节点的语言.使用 XPath 的主要原因之一是当想要查找的 ...
- C#用xpath查找某节点
C#用xpath查找某节点 从根节点一直下来的相对路径才能确定Xpath的写法. /root/<节点1>/<节点2>//<@属性> Xpath是功能很强大的,但是也 ...
- Selenium2(java)定位页面元素 二
辅助工具: chrome浏览器,F12打开控制台; Firefox浏览器,F12打开控制台; 或者选中要定位的元素右键 安装firefox扩展firebug和firepath; 安装之后F12可调用f ...
- 使用Python学习selenium测试工具-4:查找元素
转自:https://blog.csdn.net/wd168/article/details/51819930 web通常包含了Hyper Text Markup Language (HTML).Ca ...
随机推荐
- C#基础文件file的各种套路
File的各种套路 //创建一个文件 //File.Create(@"C:\Users\SpringRain\Desktop\new.txt"); //Console.WriteL ...
- CSS布局技巧之——各种居中
居中是我们使用css来布局时常遇到的情况.使用css来进行居中时,有时一个属性就能搞定,有时则需要一定的技巧才能兼容到所有浏览器,本文就居中的一些常用方法做个简单的介绍. 注:本文所讲方法除了特别说明 ...
- JavaScript笔记2
1.浮点数在运算过程中会产生误差,因为计算机无法精确表示无限循环小数. 要比较两个浮点数是否相等,只能计算它们之差的绝对值,看是否小于某个阈值(某个可接受的范围):Math.abs(1 / 3 - ( ...
- Android中文件加密和解密的实现
最近项目中需要用到加解密功能,言外之意就是不想让人家在反编译后通过不走心就能获取文件里一些看似有用的信息,但考虑到加解密的简单实现,这里并不使用AES或DES加解密 为了对android中assets ...
- jQuery转盘插件rotate
css .rotate{ background:#aaa; padding:100px; position: relative; } .point { position: absolute; top: ...
- 【转】Java Cipher类 DES算法(加密与解密)
Java Cipher类 DES算法(加密与解密) 1.加密解密类 import java.security.*; import javax.crypto.*; import java.io.*; / ...
- IOS制作纯色背景
// 生成纯色背景图- (UIImage *)createPureColorImageWithColor:(UIColor *)color alpha:(CGFloat)alpha size:(CGS ...
- 小目标 | DAX高级实践-Power BI与Excel联合应用
· 适用人群:数据分析专业人士,在数据分析方向需求发展人士 · 应用场景:数据汇报.数据可视化展现.数据建模分析 · 掌握难度:★★★★☆ 本期讲师 DAX高级实践-Power BI与Excel联合应 ...
- Spark集群任务提交
1. 集群管理器 Spark当前支持三种集群管理方式 Standalone—Spark自带的一种集群管理方式,易于构建集群. Apache Mesos—通用的集群管理,可以在其上运行Hadoop Ma ...
- Problem Q: C语言习题 计算该日在本年中是第几天
Problem Q: C语言习题 计算该日在本年中是第几天 Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 4572 Solved: 2474[Subm ...