一,元素定位①优先级:首先选择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. 寒冬之下,移动开发没人要了? 浅谈 iOS 开发者该 何去何从?

    前言: 作者 | 梅梅    文章来源 CSDN 对于移动互联网而言,2018 年像是球场上的一声裁判哨.哨声响起,高潮迭起的上半场结束.本该再创辉煌的下半场,还没开赛却被告之:规则改变.场地收缩.教 ...

  2. TCP/IP教程

    一.TCP/IP 简介 TCP/IP 是用于因特网的通信协议. 通信协议是对计算机必须遵守的规则的描述,只有遵守这些规则,计算机之间才能进行通信. 什么是 TCP/IP? TCP/IP 是供已连接因特 ...

  3. .net 委托多线程 实时更新界面

    Thread thread = new Thread(() => { button2.Invoke(new EventHandler(delegate { button2.Enabled = t ...

  4. sublime代码整理

    1. 2.输入: { "keys":["ctrl+shift+z"], (快捷键自定义,只要不冲突就可以了) "command":" ...

  5. background-image属性

    background-image 属性 实例,设置body元素的背景图像: body { background-image: url('paper.gif'); background-color: # ...

  6. Windows下多个Mysql实例配置主从(转)

    https://www.cnblogs.com/jpfss/p/8143720.html 序:     网上有很多类似的文章,也是各种百度出来的,但是对于多数刚开始接触MYSQL主从的小白来说,网上文 ...

  7. docker 安装mysql数据库 <二>

    一.下载mysql数据库 #网易镜像中心https://c.163.com/hub#/m/home/ #采用网易加速地址,不加速时下载非常的慢 docker pull hub.c..com/libra ...

  8. Linux下Apache配置HTTPS功能

    Apache配置HTTPS功能  转 https://www.cnblogs.com/liaojiafa/p/6028816.html 一.yum 安装openssl和openssl-devel,ht ...

  9. 网络编程-Mysql-2、各种查询

    1.先创建一个学生表 create table students ( id int auto_increment not null primary key, name varchar(20)  not ...

  10. 易忘&有用 的冷门Anaconda命令

    Python接触有将近2年了,但是在倒腾anaconda环境的时候,总有一些命令忘记需要查半天,今天趁着配置pytorch,特此总结一下,留待后用. 1. 创建和删除环境 创建环境 conda cre ...