2014-10-19 17 views
0

我正在使用webdriver來測試我們的應用程序,該應用程序包含表,其中用戶可以更改表中列的順序,也可以刪除/添加列(這是開發人員添加的新列的旁邊)。WebDriver - 找到動態列

什麼是正確的方式來找到我需要的列? 一種方法是通過表頭找到我正在尋找的列,所以我有列索引和比我可以訪問正確的單元格。

還有別的辦法嗎? 如何爲表中的每個元素添加唯一的id/class名稱?

感謝

回答

1

你可以爲這種情況做兩件事情:

  1. 獲取句柄table元素,然後瀏覽相應得到列或行。一旦你有了這個,那麼你可以做所有的操作他們喜歡click()

  2. 另一種方式是,看自己ids/css因爲,格局最表的,我有處理將其ids像這樣的:

    grid_name_1 grid_name_2 grid_name_3

然後你就可以有這樣做的方法:

String baseLocator = "grid_name_" + clickedRowIndex; 
driver.findElement(By.id(baseLocator)).click(); //for click operation 

假設用戶想要點擊第3行,那麼clickedRowIndex將會是3,它將選擇第3個表格行。