UI自动化定位常用实现方法代码示例


Posted in Python onOctober 27, 2020

8大基础定位

  • driver.find_element_by_id() # id定位
  • driver.find_element_by_name() # name定位
  • driver.find_element_by_class_name() # class名称定位
  • driver.find_element_by_tag_name() # 标签定位
  • driver.find_element_by_xpath() # xpath定位
  • driver.find_element_by_css_selector() # css定位
  • driver.find_element_by_link_text() # a标签的文本定位
  • driver.find_element_by_partial_link_text() # a标签的局部文本定位

xpath定位

//*[]:// 相对定位 * 匹配任意标签

第一种:id\class\name\其他属性,精确匹配

driver.find_element_by_xpath("//*[@id='']") # id与id的值
driver.find_element_by_xpath("//*[@class='']") # class和class的值<br data-filtered="filtered">driver.find_element_by_xpath("//*[@name='']")

 # naem和值<br data-filtered="filtered">driver.find_element_by_xpath("//*[@shuxingming='']") # 属性名和值

第二种:模糊匹配\层级\索引\逻辑运算

模糊匹配:

driver.find_element_by_xpath("//*[contains(text(),'测试')]")

# 包含某些字符
driver.find_element_by_xpath("//*[starts-with(text(),'测试')]")

# 以某些字符开头
driver.find_element_by_xpath("//*[ends-with(text(),'测试')]")

# 以某些字符结尾
driver.find_element_by_xpath("//*[matchs(text(),'测试')]")

 # 正则匹配

层级:

driver.find_element_by_xpath("//*[@id='']/p")

索引:

driver.find_element_by_xpath("//*[@id='']/option[0]")

第三种:绝对定位

html/body/heard/div/divdiv/ul/li[2]/a 不推荐

css定位

第一种:id\class\标签名

#:id

.:class

driver.find_element_by_css_selector("#username") #id为username
driver.find_element_by_css_selector(".username") #class为username
driver.find_element_by_css_selector("iframe") #标签名为iframe

 第二种:

索引:

driver.find_element_by_css_selector("selet#nr>option:nth-child(1)") #标签名:nth-child(1)来定位子元素

层级:

driver.find_element_by_css_selector("selet#nr>option") #标签名:nth-child(1)来定位子元素

逻辑运算:

driver.find_element_by_css_selector("input#nr[id=''][class='']") #不用and连接,写在一起即可

定位多组元素

使用 find_elements ,结果为列表,使用下标索引方式取值

names=driver.find_elements_by_name("username")
print names[1]

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
从零学python系列之数据处理编程实例(二)
May 22 Python
使用基于Python的Tornado框架的HTTP客户端的教程
Apr 24 Python
关于django 数据库迁移(migrate)应该知道的一些事
May 27 Python
Python不使用int()函数把字符串转换为数字的方法
Jul 09 Python
Numpy中的mask的使用
Jul 21 Python
基于Numpy.convolve使用Python实现滑动平均滤波的思路详解
May 16 Python
Python 实现还原已撤回的微信消息
Jun 18 Python
python元组的概念知识点
Nov 19 Python
Python Tensor FLow简单使用方法实例详解
Jan 14 Python
jupyter notebook tensorflow打印device信息实例
Apr 20 Python
python模块如何查看
Jun 16 Python
Python json解析库jsonpath原理及使用示例
Nov 25 Python
基于python获取本地时间并转换时间戳和日期格式
Oct 27 #Python
如何在pycharm中安装第三方包
Oct 27 #Python
Python操控mysql批量插入数据的实现方法
Oct 27 #Python
python 对一幅灰度图像进行直方图均衡化
Oct 27 #Python
Pycharm操作Git及GitHub的步骤详解
Oct 27 #Python
python 爬虫如何正确的使用cookie
Oct 27 #Python
python+requests实现接口测试的完整步骤
Oct 27 #Python
You might like
PHP5/ZendEngine2的改进
2006/10/09 PHP
如何分别全角和半角以避免乱码
2006/10/09 PHP
解析php防止form重复提交的方法
2013/07/01 PHP
关于WordPress的SEO优化相关的一些PHP页面脚本技巧
2015/12/10 PHP
关于IE浏览器以及Firefox下的javascript冒泡事件的响应层级
2010/10/14 Javascript
JS实现多物体缓冲运动实例代码
2013/11/29 Javascript
extjs 分页使用jsp传递数据示例
2014/07/29 Javascript
js跨域问题浅析及解决方法优缺点对比
2014/11/08 Javascript
JavaScript中使用自然对数ln的方法
2015/06/14 Javascript
jQuery和hwSlider实现内容响应式可触控滑动切换效果附源码下载(二)
2016/06/22 Javascript
jQuery Dialog 打开时自动聚焦的解决方法(两种方法)
2016/11/24 Javascript
Bootstrap + AngularJS 实现简单的数据过滤字符查找功能
2017/07/27 Javascript
javaScript产生随机数的用法小结
2018/04/21 Javascript
纯js封装的ajax功能函数与用法示例
2018/05/14 Javascript
在Vue 中使用Typescript的示例代码
2018/09/10 Javascript
js实现同一个页面,多个enter事件绑定的示例
2018/10/10 Javascript
node实现分片下载的示例代码
2018/10/17 Javascript
微信小程序纯文本实现@功能
2020/04/08 Javascript
JavaScript之scrollTop、scrollHeight、offsetTop、offsetHeight等属性学习笔记
2020/07/15 Javascript
python模拟登录百度代码分享(获取百度贴吧等级)
2013/12/27 Python
Python学习小技巧之列表项的推导式与过滤操作
2017/05/20 Python
Appium+Python自动化测试之运行App程序示例
2019/01/23 Python
Python Numpy库常见用法入门教程
2020/01/16 Python
运行tensorflow python程序,限制对GPU和CPU的占用操作
2020/02/06 Python
python tkinter的消息框模块(messagebox,simpledialog)
2020/11/07 Python
HTML5如何实现元素拖拽
2016/03/11 HTML / CSS
GIVENCHY纪梵希官方旗舰店:高定彩妆与贵族护肤品
2018/04/16 全球购物
英国知名美妆护肤在线商城:Zest Beauty
2018/04/24 全球购物
简述Linux文件系统通过i节点把文件的逻辑结构和物理结构转换的工作过程
2016/01/06 面试题
JVM是一个编译程序还是解释程序
2012/09/11 面试题
简单的项目建议书模板
2014/03/12 职场文书
竞选学生会主席演讲稿
2014/04/24 职场文书
关于诚信的活动方案
2014/08/18 职场文书
KTV门卫岗位职责
2014/10/09 职场文书
2014年结对帮扶工作总结
2014/12/17 职场文书
2019年家电促销广告语集锦
2019/10/21 职场文书