【发布时间】:2019-10-05 11:40:00
【问题描述】:
我试图使用 getText() 和 getAttribute("innerHTML") 获取锚链接的文本,但无法获取文本。这是 HTML:
<tr _ngcontent-c6="">
<td _ngcontent-c6="" class="text-center0" style="padding-left:25px">ParentText</td>
</tr>
<tr _ngcontent-c6="">
<td _ngcontent-c6=""> </td>
<td _ngcontent-c6="" class="text-center4" style="text-align: center; color: rgb(111, 156, 7);">
<a _ngcontent-c6="">$10,000.00</a>
</td>
我尝试了以下 XPath:
.//*[contains(text(),'ParentText')]/../following-sibling::tr/td[2]/a
我试过的代码:
WebElement childText = driver.findElement(By.xpath(".//*[contains(text(),'ParentText')]/../following-sibling::tr/td[2]/a"));
WebDriverWait wait = new WebDriverWait(driver,20);
wait.until(ExpectedConditions.elementToBeClickable(childText));
PrintStream out = new PrintStream(System.out, true, "UTF-8");
out.println("Currency Selected:" +childText.getText());
也尝试了最后一行
out.println("Currency Selected:" +childText.getAttribute("innerHTML"));
还尝试了通常的打印。
System.out.println("Currency is : " +childText.getText());
和
System.out.println("Currency is : " +childText.getAttribute("innerHTML"));
我既没有收到任何错误,也没有收到任何文本输出。 为元素上的 isDisplayed() 传递了一个断言。
Assert.assertTrue(ChildText.isDisplayed());
【问题讨论】:
标签: selenium selenium-webdriver webdriver