在Selenium文本搜索元素是利用其文本属性来定位网络元素。当基本元素识别属性(如ID或Class)动态且难以定位网络元素时,大多数都会使用文本值。
有时,开发人员倾向于将相同的ID或相同的Class相似Web元素组合在一起。例如,如果你有一个标签为Button的元素,它有一个动态ID和Class名称,其中ID来自 "ID-3465-text1 "变为 "ID-4434-texte2,而Class的名字在每次新会话中都来自 "ID-Class-text45 "变为 "ID-Class-text73”。
来源
在这种情况下,使用ID或Class属性来定位网络元素变得非常困难。此时,Text属性正在执行Selenium自动化测试它将发挥作用。
文本值可以完全匹配或部分匹配来定位元素。在这篇文章中,关于如何在Seleniumm中定位元素。 通过文本在WebDriver中搜索元素文章您将学习如何使用Text属性来找到任何元素。
让我们开始吧!
Selenium中的搜索元素是什么?
当你开始写你的Selenium自动化脚本时,与网络元素的互动成为你的第一步和非常重要的一步,因为你在测试脚本中玩Webelements。现在,只有当你以正确的方式识别这些网络元素时,才能与它们互动。
搜索Selenium中的元素是帮助您识别网络元素的命令。搜索元素的方法有很多,可以使用Selenium中的Web定位器(如ID)、Name、Class Name等。)在网页上唯一识别一个Web元素。以下是Selenium中搜索元素的语法。
语法是搜索元素
WebElement elementName= driver.findElement(By.
如上述语法所示,该命令被接受 "By作为参数的对象,返回Webelement对象。By“接受定位器策略是定位器或查询对象。定位器策略可以有以下值。
·ID
·名称
·类别名称
·标签名称
·链接文本
·部分链接文本
·XPath
·CSS选择器
通过文本搜索Selenium中的元素是什么?
在最后一节中,我们看到了Selenium中的搜索元素及其语法。现在,你必须想知道如何在Selenium 通过文本在WebDriver中搜索元素。
答案是使用Selenium中的XPath!
想知道怎么做吗?让我们看看下面的部分。
为了使用文本,您需要使用XPath作为您的定位策略,并在定位值中使用元素的文本属性。
XPath在Selenium中的基本格式如下。XPath = //tagname[@Attribute=’Value’]
然而,在我们开始之前,有必要了解Selenium的两种内置方法,它们最终将用于findelement。
1.text() - 这是一种内置的Selenium方法,与XPath一起使用,以便根据一个元素的确切文本值进行定位。在findelement中使用text的语法是。 WebElement ele = driver.findElement(By.xpath(“//
2.contains()- 类似于text()方法,contains()是另一种与XPath一起使用的内置方法。然而,当我们想根据一些文本匹配来编写定位器时,这是使用的。在 findElement 中使用 text() 和 contains() 的语法是。 WebElement ele=driver.findElement(By.xpath(“//
现在让我们详细了解一下这些。
通过文本搜索元素在Selenium中用于完整的文本匹配
现在,你已经看到了text()语法在完全文本匹配的情况下使用。在本节中,让我们通过一个例子来看看如何通过文本在selenium中搜索元素。
我们将使用Lambdatest提供的Seleniumm Playground来理解这一点。Lambdatest是一个基于云的跨跨度浏览器支持Selenium网格的测试平台,为您使用本地机器自动化测试每一个障碍都提供了解决方案。像Lambdatest这样的测试自动化平台提供了一个由3000多个在线浏览器组成的Selenium网格,让您可以毫不费力地进行Selenium自动化测试。