web自动化之元素定位手段工具
1、Xpath定位
表达式 | 描述 |
---|---|
/ | 根节点 |
/ / | 相对路径 |
. | 当前路径 |
.. | 返回上层 |
@ | 选取属性 |
实例:
html/head/div
/html/div/
//div
//div/./..
//div[@name] 根据属性名定位
//div[@name='taoge'] 根据属性名和属性值定位
//div[@name='taoge']/div[1] 定位第1个
//div[@name='taoge']/div[last()] 定位最后一个
//div[@name='taoge']/div[last()-1] 定位倒数第2个
//div[@name='taoge']/div[position()=5] 定位第5个
//div[@name='taoge']/div[position()>=5] 定位到大于等于第5个的
//span[i=1000] 根据标签内的值定位如:<i>1000</i>
//span[i>1000]
通配符
通配符 | 描述 |
---|---|
* | 匹配任何元素节点 |
@* | 匹配任何属性节点 |
node() | 匹配任何类型的节点 |
//* 定位所有节点
/* 定位最外层节点
//tital[@*] 定位所有带有tital的节点元素
//*[@*] 定位所有标签中有属性的如: <link href="www.baidu.com"></link> 不是:<i></i>
//html/node() 只定位html的子标签一层,node()只代表任意一个节点
//html/node()/meta 与 //html/*/meta 定位的一样
//meta | //link 定位meta或者link节点放到一个集合中
(//textarea | //div)[@id='wrapper']
//*[text()='taoge'] 定位标签之间的文本内容如:<i>taoge</i>//*[starts-with(@name,"abc")] 定位属性name的值以abc开头的节点如:<div name="abcdefgh"></div>//*[contains(@name,"cde")] 定位属性name的值包含abc的节点如:<div name="abcdefgh"></div>//*[@name='taoge' and @class='xiaohong'] 用户两个属性和值来定位节点
2、CSS选择器(优先使用)
.taoge 用类名来定位节点如:<div class="taoge"></div>
#taoge 用id名来定位节点如:<div id="taoge"></div>
* 定位所有节点
div 用标签节点p来定位如:<div></div>div,link 定位div或者link节点放到一个集合中div a 定位到div节点下所有的a节点,包括子节点、孙节点、重孙节点div>a 只定位到div节点下子节点adiv+link 定位到div节点下面的link节点,div和link是同胞节点[id] 定位到所有id属性的标签
[id='taoge'] 用id名来定位节点如:<div id="taoge"></div>[class] 定位到所有class属性的标签
[class='taoge'] 用class名来定位节点如:<div class="taoge"></div>
[class~='taoge'] 用class名中包含taoge来定位节点如:<div class="taoge xiaohong"></div>[type] 定位到所有type属性的标签 <div type="taoge"></div>
[type='taoge'] 用type属性值来定位节点如:<div type="taoge"></div>[name|='taoge'] 定位name属性值以taoge开头如:<div name="taoge-ceshi"></div>div[src^="http:"] 定位src属性值前缀是http:的如:<div src="http://www.taoge.js"><div>
div[src$="js"] 定位src属性值后缀是js的如:<div src="http://www.taoge.js"><div>
div[src*="taoge"] 定位src属性值包含taoge的如:<div src="http://www.taoge.js"><div>p:only-child 定位子节点只有p节点
div:only-child 定位子节点只有div节点div>p:nth-child(2) 定位div的第二个子节点p
div>a:nth-child(2) 定位div的第二个子节点adiv>*:nth-last-child(3) 定位div的倒数第三个节点:empty 定位所有没有子节点的节点
div:empty 定位所有没有子节点的div节点#taoge:target 定位当前活动的#taoge节点input:enabled 定位所有开启的input节点
input:disabled 定位所有禁用的input节点input:checked 定位所有选中的input节点:not(p) 定位所有不是p的节点a.taoge:nth-child(2) 定位所有a节点包含类名taoge的第二个节点如:
<a class="xiaolv"></a>
<a class="taoge"></a>
<a class="xiaolan"></a>
web自动化之元素定位手段工具相关推荐
- web自动化之元素定位
一.基础的元素定位 通过一个属性定位: 以百度浏览器为例:定位百度输入框 在浏览器上定位元素的操作方式: 按F12,点击左上角的箭头,呈绿色,再点击输入框,可看到 ,有一段代码input标签被高亮显示 ...
- WEB自动化_元素定位_elements与element_元素列表
1.elements返回的是一个元素列表 """ 匹配元素列表有一个小应用: 匹配单个元素的时候,如果找不到就会抛出异常: 匹配元素列表的时候,如果找不到就会返回空列表: ...
- Robot Framework:Web自动化之-元素处理
Robot Framework:Web自动化之-元素处理 普通元素 1 文本输入框 1.1 输入文本 Wait Until Element Is Visible xpath=//*[@id=" ...
- appium自动化,appium元素定位
appium自动化,appium元素定位 Appium是一款综合性软件,可让您在本地.移动或混合应用程序上执行复杂的测试. 简而言之,appium自动化框架允许您在不需要 SDK 或在每次测试会话后重 ...
- Python+selenium自动化八大元素定位方法及实例(超详细)
目录 一.selenium模块中的find_element_by_id方法无法使用 二.Python+selenium自动化八大元素定位方法 使用场景: 1.通过id属性定位:driver.find_ ...
- Web UI自动化测试之元素定位
目前,在自动化测试的实际应用中,接口自动化测试被广泛使用,但UI自动化测试也并不会被替代.让我们看看二者的对比: 接口自动化测试是跳过前端界面直接对服务端的测试,执行效率和覆盖率更高,维护成本更低,整 ...
- web自动化捕捉元素基本方法
前言:前面已经把环境搭建好了,从这篇开始,正式学习selenium的webdriver框架.我们平常说的 selenium自动化,其实它并不是类似于QTP之类的有GUI界面的可视化工具,我们要学的是w ...
- web页面:元素定位
web自动化测试核心内容: 元素定位 网页操作 等待 pytest+selenium组合使用 项目实战 本节内容主要讲元素定位. 1.为什么要进行元素定位? 操作元素 2.selenium如何进行定位 ...
- 三、Appium-python-UI自动化之元素定位uiautomatorviewer
uiautomatorviewer是android-sdk自带的一个元素定位工具,非常简单好用,使用uiautomatorviewer,可以检查一个应用的UI来查看应用的布局和组件以及相关的属性. 一 ...
最新文章
- 全球及中国烯丙基硫脲行业十四五需求产量及投资规模预测报告2022版
- mysql 小数点后几位不足补0初始化
- 《leetcode》first-missing-positive
- LeetCode(合集) 路径总和(二叉树) golang copy的值复制
- 安卓逆向_15( 三 ) --- Android NDK 开发【 jni 静态注册、JNI_OnLoad 动态注册】
- 每年的飞鸽传书5月21日都要进一位老师
- 个基于TensorFlow的简单故事生成案例:带你了解LSTM
- Docker制作镜像、启动容器、查看版本、修改源、安装工具
- CRT工具连接Linux操作手册
- 五十、Nginx负载均衡、SSL原理、生成SSL密钥对、Nginx配置SSL
- 青岛自然人税收管理系统服务器地址,青岛市自然人税收管理系统扣缴客户端
- DevExpress控件导出Excel
- SPI TFT液晶屏与Arduino Uno 连接
- debian/ubuntu 64bit 安装 android sdk时adb无法编译的问题
- 开启加盟模式,喜茶能否借此越过山丘?
- java计算机毕业设计东理咨询交流论坛源码+系统+lw文档+mysql数据库+部署
- 2022-2028年中国折叠椅行业发展策略分析及投资前景研究报告
- MATLAB基本使用素养
- 大数据导论习题_2020智慧树答案 大数据概论 最新知到章节测试答案
- xlrd python读取excel 编码错误_python读取excel数据报xlrd.biffh.XLRDError错误原因