このテーブルのチェックボックスの問題http://dl.dropboxusercontent.com/u/55228056/Locators.html 複雑なテーブルの下では、Access の下にチェックボックスが表示されます。Selenium で Java を使用してこれらのチェックボックスをチェックしたいと思います。
以下は私が試したコードです..
Web テーブルのクラスを作成しました
public class Table
{
public WebElement getCellEditor(int rowIdx,int colIdx,int editorIdx)
{
try
{
List<WebElement> tablerows=_webTable.findElements(By.tagName("tr"));
WebElement currentrow=tablerows.get(rowIdx-1);
List<WebElement> tablecols=currentrow.findElements(By.tagName("td"));
WebElement cell=tablecols.get(colIdx-1);
WebElement cellEditor=cell.findElements(By.tagName("input")).get(editorIdx);
return cellEditor;
}catch(NoSuchElementException e)
{
throw new NoSuchElementException("Failed to get cell editor");
}
}
同じように他のクラスに拡張されます。
public class TestWebTable
{
public void printTable() throws InterruptedException
{
try
{
Table table=new Table(driver.findElement(By.id("users")));
WebElement cellEdit=table.getCellEditor(3,3 ,2);
cellEdit.click();
Thread.sleep(5000);
/*WebElement cellEdit2=table.getCellEditor(3,3,4);
cellEdit2.click();*/
}catch(Error e)
{
verificationErrors.append(e.toString());
System.out.println(verificationErrors.toString());
}
}
上記を実行して (3,3 ,2) を (rowindex,columnindex,editorindex) に指定してチェック ボックスをオンにすると、チェック ボックスはオンになりません。