我的表格有标签名称“td”和“mat-cell”。我已经实现了如下示例的源代码,该示例仅获取 tagName 为“td”的单元格的值。
如何获取包含 tagName 为“td”或“mat-cell”的数据?
WebElement 表 = driver.findElement(taskListTablexpath);
List<WebElement> rows = table.findElements(By.tagName("tr"));
int row_count = rows.size();
System.out.println("Total Row: " + row_count);
for (int row = 0; row < row_count; row = row + 2) {
**List<WebElement> columns = rows.get(row).findElements(By.tagName("td"));**
int columns_count = columns.size();
System.out.println("Number of cells In Row " + row + " are " + columns_count);
for (int column = 0; column < columns_count; column++) {
String celtext = columns.get(column).getText();
if (celtext == null)
continue;
System.out
.println("Cell Value of row number " + row + " and column number " + column + " Is " + celtext);
}
System.out.println("-------------------------------------------------- ");
}
}
最佳答案
只能有一个标签,如果要匹配 <td>
具有 mat-cell
的元素类attribute - 您需要将选择器修改为:
./td[contains(@class,'mat-cell')]
更多信息:
另请注意Table可通过 HtmlElements framework 获取类(class),它使得与 Tables 一起工作包括Angular Material tables容易得多
关于java - 如何获取包含 tagName 的单元格中的值是 "td"或 "mat-cell",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57688936/