UI的自动化本质就是识别元素,操作元素,而元素的识别就是通过HTML的标签和属性,所以对于基本的HTML的只是是必备的

随着页面复杂度的提升,加之很多公司的开发也没有统一规范,这就给识别元素造成了非常大的麻烦,非常的被动

一般要选取唯一标识的元素属性来进行定位.常用的几种元素定位方法:

id  driver.find_element_by_id("id的属性值")

Name  driver.find_element_by_name("name的属性值")

class name  driver.find_element_by_class_name("class的属性值")

link text  driver.find_element_by_link_text("超级连接的名")

partial link text  同上,只是可以用模糊匹配的方式,截取一种一部分文字来使用

比如,有一个超级连接为"为了学习UI自动化",那么使用该方法就可以写为driver.find_element_by_partial_link_text("自动化")

tag name  driver.find_element_by_tag_name("标签名"),比如input,不会用它来定位一个元素,二是常用于一组元素的定位

xpath  driver.find_element_by_xpath("xpath路径")  Xpath的定位可以使用火狐下的firepath插件.当一个元素通过上面的方法都无法定位到时,可以尝试使用xpath

css selector  dirver.find_element_by_css_selector("css selector"),比较麻烦,且不容易理解.一般可以通过元素的id\class\标签的属性来进行定位(使用xpath比较方便快捷)

规则如下:

  #表示属性,比如#kw

  .表示class属性,比如s._ipt

  标签名直接写,比如input

Selenium-元素定位与操作的更多相关文章

  1. 3 - Selenium元素定位和操作

    3.1定位 <button id="gbqfba" aria-label="Google Search" name="btnK" cl ...

  2. 自动化测试基础篇--Selenium元素定位

    摘自https://www.cnblogs.com/sanzangTst/p/7457111.html 一.Selenium元素定位的重要性: Web自动化测试的操作:获取UI页面的元素,对元素进行操 ...

  3. selenium元素定位陷阱规避

    为什么selenium可以在各个浏览器上运行?因为selenium在与各个浏览器驱动执行前,会先把脚本转化成webdriver, webdriver wire协议(一种json格式的协议),这样就与脚 ...

  4. Selenium3 + Python3自动化测试系列二——selenium元素定位

    一.selenium元素定位 Selenium对网页的控制是基于各种前端元素的,在使用过程中,对于元素的定位是基础,只有准去抓取到对应元素 才能进行后续的自动化控制,我在这里将对selenium8种元 ...

  5. selenium元素定位之css选择器

    在selenium元素定位时会用到css选择器选取元素,虽说xpath在定位元素时能解决大部分问题,但使用css选择器选取元素也是一种不错的选择. css相较与xpath选择元素优点如下: 表达式更加 ...

  6. 我是这么学习Selenium元素定位操作的

    写在前面 做web自动化测试都有体会,本质也就是通过操作页面元素对象来模拟用户操作行为,那么首先我们先找到这些元素对象,然后才能进行一系列操作. 我们得先告诉自动化工具或者说代码要操作那个元素,毕竟代 ...

  7. java+selenium元素定位和元素操作

    1.元素定位 ID定位元素: findElement(By.id(“”)); 通过元素的名称定位元素: findElement(By.name(“”)); 通过元素的html中的位置定位元素: fin ...

  8. UI自动化学习笔记- Selenium元素定位及元素操作

    一.元素定位 1. 如何进行元素定位? 元素定位就是通过元素的信息或元素层级结构来定位元素的 2.定位工具 浏览器开发者工具 3.元素定位方式 Selenium提供了八种定位元素方式 id name ...

  9. Java + selenium 元素定位(6)之iframe切换(即对富文本框的操作)

    在元素定位中,对富文本框的元素定位是特别的,当我们使用普通的元素定位方法对富文本框进行操作时,我们会发现不管我们之前介绍的八种方法中的任何方法,我们都不能成功定位到富文本框,并对其进行操作.那是因为富 ...

  10. selenium元素定位篇

    Selenium webdriver是完全模拟用户在对浏览器进行操作,所有用户都是在页面进行的单击.双击.输入.滚动等操作,而webdriver也是一样,所以需要我们指定元素让webdriver进行单 ...

随机推荐

  1. 【安装.net framework4.0】之安装失败,“安装时发生严重错误”

    在网上查了很多资料都说改什么文件名和注册表什么的,根本没用,后来查到一篇文章,提供了下面的解决办法: 地址:<Microsoft .NET Framework 4.0安装时发生严重错误 无法安装 ...

  2. 爬虫的原理获取html中的图片到本地

    如果你想获取哪个网页的图片,如果你想知道那个网址的美女,还等什么.代码走起:下载即可使用 完成这次瞎爬的原理如下: 第一步:获取html内容 * 第二步:然后在获取的html文本中寻找图片,根据htm ...

  3. python 常用数据结构

    #coding=utf- #元组,不可变序列(,) a=(,,,) print(a) a=tuple([,,,])#第二种定义方式 print(a) print(a[]) print(a[:]) #可 ...

  4. 识别不了socket未知的名称或服务

    个人博客地址:https://blog.sharedata.info/ socket 链接导致java.net.UnknownHostException: R1-T1-N6: R1-T1-N6: 未知 ...

  5. iOS 3DES加密

    本文转载至 http://www.cocoachina.com/bbs/read.php?tid=177167 -(NSString *)TripleDES:(NSString *)plainText ...

  6. 【BZOJ2006】[NOI2010]超级钢琴 ST表+堆

    [BZOJ2006][NOI2010]超级钢琴 Description 小Z是一个小有名气的钢琴家,最近C博士送给了小Z一架超级钢琴,小Z希望能够用这架钢琴创作出世界上最美妙的音乐. 这架超级钢琴可以 ...

  7. 我的Android进阶之旅------>Android系统设置默认来电铃声、闹钟铃声、通知铃声

    首先了解Android系统本身提供的默认铃声文件,这些文件都放在  /system/media/audio  目录下. /system/media/audio/ringtones   系统来电铃声 / ...

  8. Bootstrap第3天

    Bootstrap第3天 图片样式 .img-responsive:直接为图片添加该样式,可以实现响应式图片. .center-block:图片居中样式,而不能使用text-center样式. 图片形 ...

  9. IE11 for Windows 7 Enterprise With SP1 故障

    版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/jaminwm/article/details/29592027 这个故障非常诡异,卸载IE11也没实 ...

  10. 阿里云修改centos7主机名

    为了玩Docker,买个阿里云主机也是够拼的了. [root@iZ284olvkmjZ ~]# 不过主机名中怎么好DT,无奈,修改. 我们需要的是永久生效,阿里云提供了两种方法: 方法(1). 输入h ...