一,元素定位①优先级:首先选择id,其次选class,再就是根据其他唯一元素,在更加层级过滤定位,根据多属性定位,②首选CSS定位,在选XPATH定位

1.xpath定位

//*   获取当前网页全部元素

//*[@id='i1']  定位id为i1的元素,@后面接属性名

//*[@placeholder='请通过ID定位元素']        页面中所有元素都可以通过标签中唯一属性名来定位

//input[@placeholder='请通过ID定位元素']       把*换为input,即可通过tagname可以缩减查找范围.

//input[@class='classname']    通过class来定位元素

//div[@class='inner'][1]    定位到多个元素的情况下 , 可以通过角标来定位到哪一个元素  定位不到元素的情况下可使用该种方式(下标),弊端是维护成本高

//div[@class='driver'][1]/div[@class='inner'][1]   第一层为//div[@class='driver'][1],第二层为div[@class='inner'][1]  ,多层之间链接用反斜杠/,逐层定位元素

//input[@class='classname' and @placeholder='请通过CLASSNAME定位元素']      多元素定位用and 连接

2.document:document obj modle   文档对象模型,把看到的HTML代码变为一个对象

JS:是一种脚本语言,给页面增加逻辑,通过dom来完成对页面的操作

JQ和DOM的区别,jq根据id获取元素简单,对dom进行封装,使用起来更加简便

xpath:通过路径解析页面,是一个缩减范围的过程,解析的是xml

三,CSS定位:css selector解析的是html,比起xpath更加快捷,不支持角标定位

定位方式和html选择器一样

#i1:定位id直接用#(#id值)

.classname:定位class用.

input:定位标签直接输入标签名

input[placeholder="请通过ID定位元素"]:单元素定位,注意和xpth的区别没有@号

select[size="4"][multiple="multiple"]:多元素定位直接加上[][]加上就行,注意也没有@号

body>div[id="basebody"]: 逐层定位使用大于好>,注意层级中必须使用属性

2.css.selector定位  略简单与xpath

#i1    直接定位到id为i1的元素位置

.classname    直接定位到class等于chassname的元素,注意前面的点

[name="name"]  单属性定位,元素中有name="name"可直接定位

[name="name"][type="text"]   多属性定位

input[name="name"]     同样可在前面加上标签缩减定位范围

input[placeholder^='请通过']   模糊开头匹配,注意上尖角号

input[placeholder$='元素']    模糊结尾匹配,注意$号

input[placeholder*='元素']    模糊全匹配,注意*号

元素定位(d4-2)的更多相关文章

  1. selenium元素定位篇

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

  2. Uiautomator--Uiselector元素定位

    一.UiSelector作用 按照一定的条件(例如控件的text值,资源id),定位界面上的元素.UiSelector对象的最终目的是去构造一个UiObject对象. 二.元素定位 1.根据text定 ...

  3. selenium使用笔记(三)——元素定位

    selenium进行自动化测试的一个很重要的东西那就是元素定位,如果元素都没法定位就无法操作它,也就无法进行自动化测试了.网上对于元素定位有很多的介绍,很详细很详细的,但是依然有很多新手总是会遇到无法 ...

  4. java selenium (五) 元素定位大全

    页面元素定位是自动化中最重要的事情, selenium Webdriver 提供了很多种元素定位的方法.  测试人员应该熟练掌握各种定位方法. 使用最简单,最稳定的定位方法. 阅读目录 自动化测试步骤 ...

  5. CSS元素定位6-10课

    <精通CSS.DIV网页样式与布局>视频6-10课总结图: 元素定位 (1)float:left/right; 左浮动:脱离普通文档流向左浮动(即向左对齐):float属性必须应用在块级元 ...

  6. python学习之——selenium元素定位

    web自动化测试按步骤拆分,可以分为四步操作:定位元素,操作元素,获取返回结果,断言(返回结果与期望结果是否一致),最后自动出测试报告. 其中定位元素尤为关键,此篇是使用webdriver通过页面各个 ...

  7. python + selenium相关事件和元素定位

    女友由于工作上的失误,将公司RDM中的某一字段的2000条数据给删除了.....就算是重新添加字段,但是与其他数据的关联性已经不在了.由于每天的数据修改量大,有关部门不愿意恢复数据库,因此只能一条条的 ...

  8. Selenium定位一 --单个元素定位方法

    Selenium-Webdriver 提供了强大的元素定位方法,支持以下三种方法. 单个对象的定位方法 多个对象的定位方法 层级定位 定位单个元素在定位单个元素时,selenium-webdriver ...

  9. Selenium2+python自动化6-八种元素元素定位(Firebug和firepath)

    前言 自动化只要掌握四步操作:获取元素,操作元素,获取返回结果,断言(返回结果与期望结果是否一致),最后自动出测试报告.本篇主要讲如何用firefox辅助工具进行元素定位. 元素定位在这四个环节中是至 ...

  10. Selenium Webdriver元素定位的八种常用方式

    楼主原创,欢迎学习和交流,码字不容易,转载请注明出处,谢谢. 在使用selenium webdriver进行元素定位时,通常使用findElement或findElements方法结合By类返回的元素 ...

随机推荐

  1. Hadoop记录-JMX参数

    Yarn metrics参数说明 获取Yarn jmx信息:curl -i http://xxx:8088/jmx Hadoop:service=ResourceManager,name=FSOpDu ...

  2. 工厂方法模式-Factory Method(Java实现)

    工厂方法模式-Factory Method 工厂方法模式定义一个用于创建对象的接口,让子类决定实例化哪一个类.工厂方法让实例化的具体内容交给子类工厂来进行. 本文中的例子是这样的. 生产一个身份证, ...

  3. java实现文件的断点续传

    java实现文件的断点续传: 依赖: <!--文件上传--> <dependency> <groupId>commons-fileupload</groupI ...

  4. JGUI源码:鼠标中键滚动再次优化(5)

    //电脑端中键滚动事件 var mousewheel = getBrowserInfo() == "Firefox" ? "DOMMouseScroll" : ...

  5. ntp 服务:Server dropped: Strata too high

    1.通过ntpdate -d 服务端IP,显示Server dropped: Strata too high vi /etc/ntp.conf 在ntpd服务端的配置中添加 server 127.12 ...

  6. git的使用 (一)

    1.版本控制 版本控制(Version Control Systems)是一种记录一个或若干文件内容变化,以便将来查阅特定版本修订情况的系统.这个系统可以自动帮我们备份文件的每一次更改,并且可以非常方 ...

  7. 异常-CDH的service无法启动并抛出异常-org.apache.avro.AvroRemoteException: java.net.ConnectException: Connection refused (Connection refused)

    1 详细异常 org.apache.avro.AvroRemoteException: java.net.ConnectException: Connection refused (Connectio ...

  8. 在centos7下安装.net core

    在这里记录下安装的过程: 一开始需要去官网下载centos相关的dotnetcore的sdk 上传到linux,解压,发现需要安装libunwind, 安装libunwind:yum install  ...

  9. python 三大框架之一Django入门

    Django 是从真实世界的应用中成长起来的,它是由 堪萨斯(Kansas)州 Lawrence 城中的一个 网络开发小组编写的. 它诞生于 2003 年秋天,那时 Lawrence Journal- ...

  10. 基于深度学习的目标检测技术演进:R-CNN、Fast R-CNN、Faster R-CNN

    object detection我的理解,就是在给定的图片中精确找到物体所在位置,并标注出物体的类别.object detection要解决的问题就是物体在哪里,是什么这整个流程的问题.然而,这个问题 ...