广交好友~~ 想要讨论的可以留下msn~~~
希望群友网友经常能提出问题,一起解决,共同提高
Selenium 对表格的验证
上一篇 /
下一篇 2012-12-12 23:03:06
/ 个人分类:Selenium
发布时间: 2010-9-01 13:51 作者: 小刀 来源: 51Testing软件测试博客
字体: 小 中 大 |上一篇下一篇|打印 |我要投稿
|推荐标签:软件测试工具Seleniumselenium
通常页面上需要验证一个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 = "//div/table[@class='main-table']/tbody/tr"; String tr = "//div/table[@class='main-table']/thead/tr/th"; int rowNumber = selenium.getXpathCount(table).intValue(); int lineNumber = selenium.getXpathCount(tr).intValue(); for (int i = 1; i <= rowNumber; i++) { for (int j = 1; j <= lineNumber; j++) { String path = table + "[" + i + "]/td[" + j + "]"; if (selenium.isElementPresent(path)) { String data = selenium.getText(path); assertNotNull(data); } } } |
第三步:如果是验证table的某列含有某个值:
selenium.isElementPresent("//td[contains(text(),'my required text for verifying')]") |
也可以用:selenium.getText(path)得到那一列的值再判断:
boolean exist = data.contains(myexpectData); assertEquals(exist, true); |
版权声明:本文出自小刀的51Testing软件测试博客:http://www.51testing.com/?128005
原创作品,转载时请务必以超链接形式标明本文原始出处、作者信息和本声明,否则将追究法律责任。
收藏
举报
TAG: