51Testing软件测试论坛

标题: selenium+java,如何遍历表格中的内容呢? [打印本页]

作者: xiaoxiao_cao    时间: 2016-12-26 16:08
标题: selenium+java,如何遍历表格中的内容呢?
我百度的关于遍历表格中的内容的代码:
List<WebElement> rows = driver.findElement(By.xpath("//*[@id='yui-dt-table0']/tbody/tr"));

为什么一到我这就报错了呢?提示:
Type mismatch: cannot convert from WebElement to List<WebElement>

求指导
作者: 清晨一缕阳光    时间: 2016-12-27 08:55
一个表格中的<tr>有很多个的,定位的时候需要使用driver.findElements().
作者: xiaoxiao_cao    时间: 2016-12-27 14:28
清晨一缕阳光 发表于 2016-12-27 08:55
一个表格中的有很多个的,定位的时候需要使用driver.findElements().

就是因为tr很多  所以要遍历啊
作者: 清晨一缕阳光    时间: 2016-12-27 14:58
xiaoxiao_cao 发表于 2016-12-27 14:28
就是因为tr很多  所以要遍历啊

你定位的代码写的是driver.findElement();这个只能定一个元素;
tr有很多个,需要使用driver.findElements(),这个是定位多个元素的。

作者: xiaoxiao_cao    时间: 2016-12-30 10:38
清晨一缕阳光 发表于 2016-12-27 08:55
一个表格中的有很多个的,定位的时候需要使用driver.findElements().

嗯嗯  我遍历到了我想要的值   但有方法能实现这个操作吗?
就是我通过遍历获取到 “是” 这一行,能不能返回这一行 所在的行数呢??
[attach]104089[/attach]

作者: 清晨一缕阳光    时间: 2016-12-30 13:00
xiaoxiao_cao 发表于 2016-12-30 10:38
嗯嗯  我遍历到了我想要的值   但有方法能实现这个操作吗?
就是我通过遍历获取到 “是” 这一行,能不 ...

可以获得行数;
1.你定位的tr有多个,使用list集合接收定位到的tr;
2.循环遍历list集合;
3.在循环过程中可以取到每个单元的value,判断是否有与你想要的值相等的;如果有则输入循环中的变量值,最后此变量值+1就是你想要的行数。




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2