私はJavaとSeleniumを使ってテストを行っています。私のターゲットアプリケーションのDOMには、私が通過する必要がある多くのテーブルがあります。私は次のようなものを使用するために使用される:テーブルの行と列を扱う方法
WebElement mytable = driver.findElement(By.xpath(".//table/tbody"));
List<WebElement> rows_table = mytable.findElements(By.tagName("tr"));
int rows_count = rows_table.size();
for (int row=0; row<rows_count; row++){
List<WebElement> Columns_row = rows_table.get(row).findElements(By.tagName("td"));
int columns_count = Columns_row.size();
System.out.println("Number of cells In Row "+row+" are "+columns_count);
for (int column=0; column<columns_count; column++){
String celtext = Columns_row.get(column).getText();
System.out.println("Cell Value Of row number "+row+" and column number "+column+" Is "+celtext);
}
System.out.println("--------------------------------------------------");
}
しかし、私は簡単な方法でテーブルを扱うことができる何かを探していたので、私は検索し、見つかった:
1)selenium.getTable
2)GetTable(ElementFinder finder, JavascriptLibrary js)
しかし、私はそれらのための良いコードのサンプルを見つけることができませんでした。
短くて短い話.//tr
または.//td
をテーブル内の行と列を扱うよりも良い方法があるのだろうかと思っていましたか?
ドキュメントごとに、getTable(tableLocator.row.column)を使用してセルの内容を取得できます。ここで、行と列はゼロに基づいています。 – lsiva
@ Lsivaありがとう、すべてのコードとインポートの回答として追加できますか? –