Java 如何定位div标记中存在的特定文本?

Java 如何定位div标记中存在的特定文本?,java,selenium,Java,Selenium,我有下面的div标签列表,我想从第三个div标签中选择文本“Entry” <DIV class=menuLink style="BORDER-TOP-COLOR: transparent; BACKGROUND: #dcdfec; WHITE-SPACE: nowrap; BORDER-LEFT-COLOR: transparent; BORDER-BOTTOM-COLOR: transparent; BORDER-RIGHT-COLOR: transparent">Start Ca

我有下面的div标签列表,我想从第三个div标签中选择文本“Entry”

<DIV class=menuLink style="BORDER-TOP-COLOR: transparent; BACKGROUND: #dcdfec; WHITE-SPACE: nowrap; BORDER-LEFT-COLOR: transparent; BORDER-BOTTOM-COLOR: transparent; BORDER-RIGHT-COLOR: transparent">Start Call</DIV>


<DIV class=menuLink style="BORDER-TOP-COLOR: transparent; BACKGROUND: #dcdfec; WHITE-SPACE: nowrap; BORDER-LEFT-COLOR: transparent; BORDER-BOTTOM-COLOR: transparent; BORDER-RIGHT-COLOR: transparent">Web Pay SR</DIV>


<DIV class=menuLink style="BORDER-TOP-COLOR: transparent; BACKGROUND: #dcdfec; WHITE-SPACE: nowrap; BORDER-LEFT-COLOR: transparent; BORDER-BOTTOM-COLOR: transparent; BORDER-RIGHT-COLOR: transparent">Entry</DIV>


<DIV class=menuLink style="BORDER-TOP-COLOR: transparent; BACKGROUND: #dcdfec; WHITE-SPACE: nowrap; BORDER-LEFT-COLOR: transparent; BORDER-BOTTOM-COLOR: transparent; BORDER-RIGHT-COLOR: transparent">Exit</DIV>
我得到以下错误:

找不到部分链接文本==项的元素

谁能帮我把这件事弄清楚吗。
蒂亚

尝试使用Webdriverwait和xpath查找动态元素

WebDriverWait wait = new WebDriverWait(driver, 30);
WebElement element = wait.until(ExpectedConditions.elementToBeClickable(By.xpath("//div[contains(.,'Entry')]")));
element.click()


或者您可以使用linkText而不是xpath。

尝试使用Webdriverwait和xpath查找动态元素

WebDriverWait wait = new WebDriverWait(driver, 30);
WebElement element = wait.until(ExpectedConditions.elementToBeClickable(By.xpath("//div[contains(.,'Entry')]")));
element.click()


或者您可以使用linkText而不是xpath。

因为元素是
元素,所以您不能使用linkTextpartialLinkText。因此,您将错误视为:

Unable to find element with partial link text == Entry
在文本为条目的元素上单击()

  • xpath

    new WebDriverWait(driver, 20).until(ExpectedConditions.elementToBeClickable(By.xpath("//div[@class='menuLink' and text()='Entry']"))).click();
    

由于元素是
元素,因此不能使用链接文本部分链接文本。因此,您将错误视为:

Unable to find element with partial link text == Entry
在文本为条目的元素上单击()

  • xpath

    new WebDriverWait(driver, 20).until(ExpectedConditions.elementToBeClickable(By.xpath("//div[@class='menuLink' and text()='Entry']"))).click();
    

您所说的“选择文本”到底是什么意思。。。?是否要单击元素?您所说的…选择文本…的确切含义是什么。。。?是否要单击元素?或者可以使用linkText而不是xpath。。。
节点的链接文本?不,没有,有一些隐式等待:)或者您可以使用链接文本而不是xpath。。。
节点的链接文本?不,没有,有一些隐式等待:)