CSS定位

举例 描述
div#menu id为menu的div元素
div.action-btn.ok-btn class为action-btn和ok-btn的div元素
table#emailList   tr:nth-child(2) id为emailList的table里面的第二个tr元素。括号里的index从1开始。
input[type='submit'] 具有属性type并且其值为submit的input元素
div[id^='menu'] 具有属性id并且其值的前缀为menu的div元素
div[id$='menu'] 具有属性id并且其值的后缀为menu的div元素
div[id*='menu'] 具有属性id并且其值包含menu的div元素
div[id*='menu']:not([style*='display:   none']) 具有属性id和style并且id值包含menu,style值不包含‘display:none’的div元素
div#menu>ul.item id为menu的div元素下面最靠近它的class为item的ul元素

XPath定位

表达式 描述
nodename 选取此节点的所有子节点
/ 从根节点选取
// 从匹配选择的当前节点选择文档中的节点,而不考虑它们的位置
. 选取当前节点
.. 选取当前节点的父节点
@ 选取属性
   
举例 描述
/bookstore/book[1] 选取属于 bookstore 子元素的第一个 book 元素。index从1开始。
/bookstore/book[last()] 选取属于   bookstore 子元素的最后一个 book 元素。
/bookstore/book[last()-1] 选取属于 bookstore 子元素的倒数第二个 book 元素。
/bookstore/book[position()<3] 选取最前面的两个属于   bookstore 元素的子元素的 book 元素。
//title[@lang] 选取所有拥有名为   lang 的属性的 title 元素。
//title[@lang='eng'] 选取所有 title 元素,且这些元素拥有值为 eng 的 lang 属性。
/bookstore/book[price>35.00] 选取所有   bookstore 元素的 book 元素,且其中的 price 元素的值须大于 35.00。
/bookstore/book[price>35.00]/title 选取所有   bookstore 元素中的 book 元素的 title 元素,且其中的 price 元素的值须大于 35.00。

JPath定位

表达式 描述
$ The root element   to query. This starts all path expressions.
@ The current node   being processed by a filter predicate.
* Wildcard.   Available anywhere a name or numeric are required.
.. Deep scan.   Available anywhere a name is required.
.<name> Dot-notated child
['<name>' (, '<name>')] Bracket-notated   child or children
[<number> (, <number>)] Array index or   indexes
[start:end] Array slice   operator
[?(<expression>)] Filter expression.   Expression must evaluate to a boolean value.
   
举例 描述
$.store.book[*].author The authors of all   books
$..author All authors
$.store.* All things, both   books and bicycles
$.store..price The price of   everything
$..book[2] The third book
$..book[0,1] The first two   books
$..book[:2] All books from   index 0 (inclusive) until index 2 (exclusive)
$..book[1:2] All books from   index 1 (inclusive) until index 2 (exclusive)
$..book[-2:] Last two books
$..book[2:] Book number two   from tail
$..book[?(@.isbn)] All books with an   ISBN number
$.store.book[?(@.price <   10)] All books in store   cheaper than 10
$..book[?(@.price <=   $['expensive'])] All books in store   that are not "expensive"
$..book[?(@.author =~   /.*REES/i)] All books matching   regex (ignore case)
$..* Give me every   thing
$..book.length() The number of   books

常用的CSS定位,XPath定位和JPath定位的更多相关文章

  1. selenium用css、xpath表达式进行元素定位

    绝对路径选择 从根节点开始的,到某个节点,每层都依次写下来,每层之间用 / 分隔的表达式,就是某元素的 绝对路径 Xpath : /html/body/div CSS : html>body&g ...

  2. Selenium基础知识(详解IDE命令、css及xpath定位一)

    1. ide常用命令,参考 http://sariyalee.iteye.com/blog/1743350  2. ide介绍,参考 http://blog.csdn.net/oscar999/art ...

  3. css选择器用法,使用css定位元素,css和xpath元素定位的区别

    css定位元素 1.什么是css? CSS(Cascading Style Sheets)层叠样式表,是一种语言,用来描述html或者xml的显示样式.在css语言中有css选择器,在selenium ...

  4. UI自动化之元素定位(xpath、css)

    很早之前就已经写过自动化了,不过点着功能久了就会容易忘记元素定位,尤其是xpath和css定位,所以就花点时间做下总结收集. xpath有两种定位: 一.绝对路径(不推荐使用,除非已经使用了所有方式仍 ...

  5. web中的CSS、Xpath等路径定位方法学习

    今天不到八点就到公司了,来的比较早,趁着有点时间,总结下web中的CSS.Xpath等路径定位定位的方式吧! 简单的介绍下xpath和css的定位 理论知识就不罗列了 还是利用博客园的首页.直接附上代 ...

  6. 超全selenium元素定位XPath、CSS

    说明:在HTML页面中,<p> 是一个标签,<p>hello</p> 是一个元素,元素由一个开始的标签和结束的标签组成.<font color="r ...

  7. 元素定位-XPATH定位方法总结

    1.Xpath定位方法探讨 xpath是比较常用的一种定位元素的方式,因为它很方便,缺点是,消耗系统性能.如果Xpath使用的比较好,几乎可以定位到任何页面元素,而且受页面变化影响较小. 1.1.什么 ...

  8. 定位页面元素之xpath详解以及定位不到测试元素的常见问题

    一.定位元素的方法 id:首选的识别属性,W3C标准推荐为页面每一个元素设置一个独一无二的ID属性, 如果没有且很难找到唯一属性,解决方法:(1)找开发把id或者name加上.如果不行,解决思路可以是 ...

  9. selenium之元素定位-xpath

    被测试网页的HTML代码 <html> <body> <div id="div1" style="text-align:center&quo ...

随机推荐

  1. Node.js学习-1

    关于node.js 首先,node.js不是一门语言,是一个平台.因为在以前,javascript主要是用于网页的交互,所以必须依附于浏览器存在,只有在浏览器上才能运行javascript. 后来ja ...

  2. Bluetooth Low Energy 嗅探

    Bluetooth Low Energy 嗅探 路人甲 · 2015/10/16 10:52 0x00 前言 如果你打开这篇文章时期望看到一些新的东西,那么很抱歉这篇文章不是你在找的那篇文章.因为严格 ...

  3. String转double或者float会有精度丢失的问题

    float [] value=new float[5]; value[0]=Float.parseFloat(rs.getString(1)); value[1]=Float.parseFloat(r ...

  4. Deep Learning 19_深度学习UFLDL教程:Convolutional Neural Network_Exercise(斯坦福大学深度学习教程)

    理论知识:Optimization: Stochastic Gradient Descent和Convolutional Neural Network CNN卷积神经网络推导和实现.Deep lear ...

  5. 初识Polymer框架

    什么是polymer? polymer由谷歌的Palm webOS团队打造,并在2013 Google I/O大会上推出,旨在实现Web Components,用最少的代码,解除框架间的限制的UI 框 ...

  6. test 2016-12-6

    //$token = drupal_get_token('abc'); //dpm(drupal_valid_token($token,'abc')); //1 //从任何字符串生成一个密码形式的字符 ...

  7. Image放大缩小在放进Imageview

    // 拿到要缩小放大的Bitmap obitmap = BitmapFactory.decodeResource(this.getResources(),R.drawable.ic_launcher) ...

  8. 第一周 总结笔记 / 斯坦福-Machine Learning-Andrew Ng

    课程主页:https://www.coursera.org/learn/machine-learning/home/welcome 收集再多的资料也没用,关键是要自己理解总结,做笔记就是一个归纳总结的 ...

  9. VB关闭其他进程的输入法

    http://files.cnblogs.com/files/liuzhaoyzz/%E5%85%B3%E9%97%AD%E5%85%B6%E4%BB%96%E8%BF%9B%E7%A8%8B%E8% ...

  10. WPF中实现登陆窗口的“记住帐号”功能

    1.在Login.xaml中添加资源: <XmlDataProvider x:Key="XmlDataProvider" Source="pack://applic ...