Selenium 处理table
上一篇 /
下一篇 2010-07-18 14:09:20
/ 个人分类:Selenium
通常页面上需要验证一个table里头的值对不对,这个table一般都没有id,所以可以用xpath来解决。
第一步:识别该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);
收藏
举报
TAG: