一、selenium中Xpath的使用方法

1. 什么是xpath?

  Xpath是XML的路径语言,通俗一点讲就是通过元素的路径来查找这个标签元素

2. 练习Xpath的工具

  火狐浏览器,下载插件FireBug和FirePath

3. Xpath使用方法

  注:默认死格式,先写//*代表定位页面下的所有元素  

  (1)Xpath支持ID、class和name定位功能

    通过id定位: //*[@id='i1']

    通过class定位://*[@class='classname']

    通过name定位: //*[@name='name']

  (2)如果便签没有id,class和name三个综述性,Xpath还支持属性定位功能

    @代表以属性定位,后面看而已接标签中的任意属性,比如:

    //*[@placeholder='请通过XPATH定位元素']

  (3)当标签的属性重复时,Xpath提供了通过标签来进行过滤,//input显示所有的input标签

    //input[@placeholder='请通过XPATH定位元素']

  (4)当标签页重复时,Xpath提供了层级过滤

    例如:找不到儿子,那么久先找他的父级,实在不行可以找他的祖父级

    //div/div[@id='dis']

  (5)当层级都重复时,可以通过单个层级的属性进行定位

    //div/div[@id='w']/div

  (6)一个元素它的兄弟元素跟它的标签一样,这时候无法通过层级定位,因为都是一个父亲生的,多胞胎儿子,Xpath提供了索引过滤,索引从1开始,而非0

    //select[2]

  (7)上面几种如果都用上了惠州还重复,我们就可以使用Xpath提供的终极神器,逻辑运算定位。and或or

    //select[@name='city' and @size='4']

    //select[@name='city' or @size='4']

二、selenium中CSS Selector的使用方法

1. 什么是CSS Selector?

  CSS Selector定位实际就是HTML的CSS选择器的标签定位

2. 工具

  火狐浏览器,下载插件FireBug和FirePath

3. CSS Selector的使用方法

(1)Css selector支持id、class的定位,与html中的css定位相同

  通过id定位  #i1

  通过class定位  .classname

  通过class定位多个class  .classname.c2.c3

(2)通过属性定位,Css Selector支持任意属性定位

  [name='name']

(3)单单属性定位不足以满足我们的定位需求,Css Selector提供了标签属性组合定位

  input[name='name']   input标签下name属性等于‘name’的

  input#i1   input标签下id是i1的

  input.classname  input标签下class是classname的

  div.inner>input  div标签下class是inner的 带有input标签的(注意尖角号)

  Div.inner下有多个,但是不能用索引定位,要结合尖角号+属性使用

(4)Css selector多属性组合过滤,没有and,只需要多个[]连接就可以

  select[name='city'][size='4'][multiple='multiple']

(5)Css selector模糊匹配

  ^= 匹配元素属性以什么开头    input[value^="登"]

  $= 匹配属性以什么结尾    input[value$="录"]

  *= 匹配属性包含什么值     input[value*="录"]

selenium中Xpath和CSS Selector的使用方法的更多相关文章

  1. Xpath 和Css Selector使用

    Xpath是xml的路径语言,就是通过元素的路径来查找标签元素. Xpath直接在火狐浏览器的firebug中练习,49版本一下的火狐才能用firebug插件. Xpath的使用方法 注://*    ...

  2. selenium中Xpath标签定位和cssSelectors定位(优先用cssSelectors)

    二者的区别:xpath 支持角标定位,cssselector不支持 1.XPath是XML的路径语言,通俗一点讲就是通过元素的路径来查找到这个标签元素. xpath支持属性定位,无论是默认属性还是自定 ...

  3. selenium中Xpath轴定位方法

    1.Xpath轴:轴可定义相对于当前节点的节点集. 使用语法:轴名称::节点名称 例://input[@data-value="SXRYNAME"]/parent::td/foll ...

  4. selenium:css_selector定位详解(css selector和xpath的比较)

    selenium使用css selector和xpath的比较 selenium提供的定位方式(常用) ID NAME CLASS CSS SELECTOR XPATH   推荐的定位方式的优先级 优 ...

  5. Web自动化测试:xpath & CSS Selector定位

    Xpath 和 CSS Selector简介 CSS Selector CSS Selector和Xpath都可以用来表示XML文档中的位置.CSS (Cascading Style Sheets)是 ...

  6. Selenium之Css Selector使用方法

    什么是Css Selector? Css Selector定位实际就是HTML的Css选择器的标签定位 工具 Css Selector的练习建议使用火狐浏览器,下载插件,FireFinder.Fire ...

  7. 『心善渊』Selenium3.0基础 — 6、Selenium中使用XPath定位元素

    目录 1.Selenium中使用XPath查找元素 (1)XPath通过id,name,class属性定位 (2)XPath通过标签中的其他属性定位 (3)XPath层级定位 (4)XPath索引定位 ...

  8. 【WEB自动化】【第一节】【Xpath和CSS元素定位】

    目前自动化测试开始投入WEB测试,使用RF及其selenium库,模拟对WEB页面进行操作,此过程中首先面对的问题就是对WEB页面元素的定位,几乎所有的关键字都需要传入特定的WEB页面元素,因此掌握常 ...

  9. Selenium自动化中DOM,XPATH,CSS定位Web页面对象的优劣性分析

    加速IE浏览器自动化执行效率:Selenium自动化中DOM,XPATH,CSS定位Web页面对象的优劣性分析 1.技术背景       在Web应用中,用户通过键盘在输入框中输入值和鼠标点击按钮,链 ...

随机推荐

  1. 算法和流程控制 --《高性能JavaScript》

    总结: 1.for, while, do-while循环性能相当,并没有一种循环类型明显快于或满于其他类型. 2.避免使用for-in循环,除非要遍历一个属性数量未知的对象. 3.改善循环性能的最佳形 ...

  2. excel 创建数据有效性及背景颜色

    需求:用excel做数据或者表格时经常需要在一列中给出固定的几个进行悬着,这是如果每次键盘输入降低工作效率.如果做成鼠标双击进行选择,则提高很多效率,比如需要给一列填写Pass或Failure时,具体 ...

  3. LeetCode题解(14)--Longest Common Prefix

    https://leetcode.com/problems/longest-common-prefix/ 原题: Write a function to find the longest common ...

  4. exists用在linq上

    SQL里面,有时候会用到exists或者not exists. select * from yb t1 where not exists(select 1 from yb t2 where trunc ...

  5. iOS RAC常用方法

    一直想写篇关于RAC的文章,一是分享二是做为笔记,由于项目忙先简单的贴一个自己当初学习的时候代码吧 一.RACCommand // RACCommand 的使用: 使用场景,监听按钮点击,网络请求 - ...

  6. [翻译]Unity中的AssetBundle详解(三)

    构建AssetBundles 在AssetBundle工作流程的文档中,我们有一个示例代码,它将三个参数传递给BuildPipeline.BuildAssetBundles函数.让我们更深入地了解我们 ...

  7. 秒懂单链表及其反转(reverse)

    什么是链表,这种数据结构是由一组Node组成的,这群Node一起表示了一个序列.链表是最普通,最简单的数据结构(物理地址不连续),它是实现其他数据结构如stack, queue等的基础. 链表比起数组 ...

  8. SDUT 周赛 神奇的树(简单题 注意数据类型的溢出 )

    神奇的树 Time Limit: 1000ms   Memory limit: 65536K  有疑问?点这里^_^ 题目描述 SDUT有一颗神奇的苹果树.假如某天早上这树上有x个苹果,那么这树这一天 ...

  9. MYSQL初级学习笔记四:查询数据的操作DQL(SELECT基本形式)(26-35)

    知识点六:查询数据的操作DQL(SELECT基本形式)(26-35) CREATE DATABASE IF NOT EXISTS cms DEFAULT CHARACTER SET utf8; USE ...

  10. let 命令 与 var的区别

    ES6 新增了let命令,用来声明变量.它的用法类似于var,但是所声明的变量,只在let命令所在的代码块内有效. <script> { let a = 10; var b = 1; } ...