`
dailygoing
  • 浏览: 4469 次
社区版块
存档分类
最新评论

XPath, CSS, DOM 以及Selenium: The Rosetta Stone(罗塞达石)

阅读更多

许多编程的惯例都可以通过图表的方式最好地表现出来。没有人会抱怨XPath或者CSS可以完全通过直觉去理解,因为它们能简洁而高效地定位层级的数据。建立一个清单式的图表还是颇有难度的。然而你却能豁然开朗,像SeleniumIED这样的app会变得容易得多。

“A little learning is a dangerous thing." [Alexander Pope, An Essay on Criticism]
浅尝辄止是非常危险的。

你是否曾被XPath、CSS或DOM所吸引并尝试着使用它们,而后有发觉自己并没有完全掌握其中所有的用法?其实,这三种技术的有着相似的目的:用一些标记来寻找所需的元素。那么就有可能把以各种技术实现的查找方式都例举出来。下面,这(XPath | CSS | DOM | Selenium)版Rosetta Stone(罗塞达石,解释古埃及象形文字的可靠线索)以及技术清单将带满足你的所有需求,并且能帮助你梳理贯通、博采众长。

XPath, CSS, 和DOM的形式看起来是多样化的,却也有着许多共同之处。它们都提供了高效的语法结构来查找元素,XPath建立在一般的XML(包括形式良好的 HTML)之上,而CSS和DOM是严格建立在HTML上的。以下的图表将展示每种技术所有查找元素的语法,另外由于它们一一对应的特点,图表给出的相互参照项能使你知其一而悉其他。

最后,图表又将细长的表项分成了多个部分,以提供Selenium的视角,更好地应用到Selenium平台上。其中高亮出为一些主要规则之外的特例。对于你的实验,一个完整的测试系列将会是个好的开始!

各人喜好不同,以下提供两个版本,风格不同而内容一致。





 


翻译自:https://www.simple-talk.com/content/article.aspx?article=1269

  • 大小: 337.1 KB
  • 大小: 219.2 KB
分享到:
评论

相关推荐

    WebDriver xpath css selector

    根据提供的文件内容,本文将详细解释WebDriver、xpath、css selector的使用以及如何在自动化测试中选择页面元素。首先,我们需要理解WebDriver是一个自动化测试工具,用于Web应用程序的测试。它可以通过各种编程语言...

    Selenium WebDriver中使用By.Xpath快速定位页面元素

    Selenium WebDriver 中使用 By.Xpath 快速定位页面元素 Selenium WebDriver 是一个自动化测试工具,可以模拟用户交互来对 Web 应用程序进行测试。其中,定位页面元素是自动化测试的关键步骤。By.Xpath 是一种快速...

    dom4j用到的xpath\dom4j等一系列jar包

    下面是一个简单的示例,展示如何使用DOM4J和XPath: ```java import org.dom4j.Document; import org.dom4j.DocumentHelper; import org.dom4j.Element; import org.dom4j.XPath; // 创建XML文档 String xml = ...

    org.dom4j.jar

    2. **XPath支持**:DOM4J支持XPath表达式,这是对XML文档进行查询的强大工具。通过XPath,我们可以快速定位XML文档中的特定节点,进行数据提取或更新。 3. **事件驱动解析(SAX)**:DOM4J也支持SAX解析器,适用于...

    dom4j和xpath的jar包

    此外,DOM4J还支持命名空间、XPath表达式以及转换为其他XML格式(如SAX或DOM)的能力。 XPath是W3C制定的一种查询语言,用于在XML文档中查找信息。它可以定位到XML文档中的特定节点,如元素、属性、文本等。XPath...

    dom4j和xpath必备jar包

    在Java开发中,DOM4J和XPath是两个重要的XML处理工具。XML(eXtensible Markup Language)是一种标记语言,广泛用于数据交换、配置文件和文档结构化存储。DOM4J和XPath则提供了方便的方式来解析、操作和检索XML文档...

    解析xml两个jar包dom4j-1.6.1和jaxen-1.1-beta-7.jar

    **dom4j** 是一个开源的Java XML API,它提供了全面而强大的功能,包括XML的读取、写入、修改以及XPath查询。dom4j的主要特点如下: 1. **灵活性**:dom4j不仅支持DOM(Document Object Model)接口,还提供了SAX...

    WebDriver-xpath和WebDriver-Css学习

    XPath和Css选择器是WebDriver中两种常用的选择元素方法。 XPath(XML Path Language)是一种在XML文档中查找信息的语言。在WebDriver中,XPath用于定位HTML元素,它可以根据元素的属性、值、位置等多种条件进行精准...

    获取网页上 xpath , css 路径的插件, 方便爬虫、自动化测试相关软件工作者快速获取页面上html元素路径

    在IT行业中,尤其是在网页爬虫和自动化测试领域,获取网页上的XPath和CSS选择器路径是一项基本且重要的技能。XPath和CSS选择器是两种常见的定位HTML元素的方法,它们被广泛用于网页抓取、网页自动化和测试工具中。这...

    mysql和Xpath和Dom4J 的jar包

    综上所述,`mysql-connector-java.jar`是用于Java连接MySQL数据库的库,XPath是用于选取XML节点的语言,而Dom4J是用于处理XML文档的Java库。这三个组件在Java开发中各有其重要用途,共同构成了数据存储、数据提取和...

    dom4j 和xpath

    DOM4J和XPath是XML处理领域中的两个重要概念,它们在Java编程中有着广泛的应用。DOM4J是一款灵活且功能强大的Java库,主要用于处理XML文档,而XPath是一种在XML文档中查找信息的语言。 DOM4J简介: DOM4J是基于Java...

    PHP100视频教程89:PHP.XML.的.DOMDocument.读取功能.rar

    - **查找节点**:`DOMDocument::getElementsByTagName()`通过标签名查找节点,`DOMXPath`对象可以进行更复杂的查询。 5. **DOMXPath**: DOMXPath提供了一个更灵活的查询机制,允许我们根据XPath表达式找到XML...

    selenium操作隐藏的元素(python+Java)

    Selenium 操作隐藏的元素(Python+Java) Selenium 是一个流行的自动化测试工具,能够模拟用户的行为来操作网页元素。但是在实际应用中,我们经常会遇到隐藏的元素,这些元素因为某些原因而不可见,从而导致 ...

    Selenium中使用XPath.docx

    但是,DOM定位器的表达式通常比XPath和CSS选择器更复杂,可能会影响脚本的可读性和维护性。 总结起来,在新的Web自动化项目中,XPath和CSS定位器都是推荐的选择。XPath提供了简洁的定位表达式,而CSS定位器则易于...

    Selenium_XPath定位详解

    本文将深入探讨Selenium结合XPath的定位策略,帮助你更有效地进行网页自动化测试。 首先,XPath 是一种在XML文档中查找信息的语言,其语法和功能非常丰富。在Selenium中,XPath可以用来定位页面上的元素,如按钮、...

    dom4j-1.6.1.zip

    在本文中,我们将深入探讨DOM4J以及如何与XPath结合使用,以实现高效且精准的XML数据提取。 首先,DOM4J这个名字来源于“Document Object Model for Java”。DOM是一种标准的API,用于表示XML文档的树结构。然而,...

    dom4j中xpath的使用

    **DOM4J中XPath的使用** XPath是一种在XML文档中查找信息的语言,它被设计用来在XML文档中导航,寻找节点、属性或者信息。DOM4J是Java中一个非常流行的XML处理库,它提供了对XPath的强大支持。这篇文档将深入探讨...

    基于Python的selenium操作:判断元素是否存在+判断元素是否可以点击.zip

    这里的`locator`可以是元素的ID、名称、CSS选择器或XPath表达式等,根据实际情况选择合适的方式定位元素。 【判断元素是否可以点击】 元素的可点击性通常基于两个条件:一是元素是否可见,二是元素是否处于启用...

    dom4j-1.6.1.jar.zip

    4. **XPath支持**:DOM4J支持XPath表达式,可以通过简洁的语句选取XML文档中的节点,极大地提高了代码的可读性和效率。 5. **转换和序列化**:DOM4J能够将XML文档转换成其他形式,如Java对象,反之亦然。此外,它还...

Global site tag (gtag.js) - Google Analytics