Selenium 處理table
第一步:識別該table 的某個cell。這裡要注意通常一個table的第一行是表頭,第二行才是具體的值,selenium識別行列從1開始數的,不是0.所以一個table的第1行第1列的值應該是:
//table[@class='myTable']/tbody/tr[2]/td[1]
第二步:加入驗證點。
首先要考慮這個table是不是存在,不存在就直接assertExist返回.
然後考慮這個table是不是會返回很多行,如果需要驗證每一行的這一列都是某個固定值,則用迴圈來控制:
String table = "//table[@class='myTable']/tbody/tr";
int rowNumber = selenium.getXpathCount(table).intValue(); for (int i = 0; i <= rowNumber; i++) { path = table+ "[" + Integer.toString(i) + "]/td[" + column + "]"; if (isElementPresent(path)) { String data = getText(path); assertEquals(data, myexpectData); } } }
第三步:如果是驗證table的某列含有某個值:
selenium.isElementPresent("//td[contains(text(),'my required text for verifying')]")
也可以用:selenium.getText(path)得到那一列的值再判斷:
boolean exist = data.contains(myexpectData); assertEquals(exist, true);