我有以下的HTML代码,我需要检查,如果文本表格单元格中存在:硒XPath查找div标签内的表格单元格
<div class="background-ljus" id="AutoText">
<table class="topAlignedCellContent">
<tbody>
<tr>
<td>X1</td>
</tr>
<tr>
<td>X2</td>
</tr>
</tbody>
</table>
<table>
<tbody>
<tr>
<td>Y1</td>
<td>Y2</td>
</tr>
</tbody>
</table>
<table>
<tbody>
<tr>
<td>Z1</td>
<td>Z2</td>
</tr>
</tbody>
</table>
</div>
我已经解决了这样的:
By locator = getLocator(CommonConst.XPATH, "*//div[@" + type + "='" + anyName + "']");
fluentWait(locator);
WebElement div = getDriver().findElement(locator);
List<WebElement> cells = div.findElements(By.tagName("td"));
for (WebElement cell : cells) {
if (cell.getText().contains(cellText)) {
foundit = true;
}
}
但我觉得它有点慢,因为我需要这样做几次。 我试图用XPath做到这一点,但没有运气。
"*//div[@id='AutoText']//td[contains[Text(), 'celltext']]"
"*//div[@id='AutoText']//table//tbody//tr[td//Text()[contains[., 'celltext']]"
任何人都有关于为什么我的XPath不工作的建议吗?
退房我添加的说明我的回答,它指出了一个重要的警告。 – Tomalak