2010-05-05 40 views
3

我知道Selenium有一个内置方法getTable(“tableName.row.column”)可以方便地返回一个单元格。但是,我怎样才能返回整列?如何使用Selenium返回整列?

我试过的getText()直接,但返回仅第一个单元格,

getText("//tbody[@id='recordsTable']/tr[contains(@class, 'someclass')]") 

但getXpathCount()使用相同的XPath表达式表明有是匹配的多个元素。

getXpathCount("//tbody[@id='recordsTable']/tr[contains(@class, 'someclass')]") // result is 15 

请给予帮助,非常感谢!

回答

5

您需要遍历所有匹配的元素并将它们存储在某处。

所以

int matches = selenium.getXpathCount("//tbody[@id='recordsTable']/tr[contains(@class, 'someclass')]") 
string[] column; 
for (int i = 1; i < matches;i++){ 
    column.add(selenium.getText("//tbody[@id='recordsTable']/tr[contains(@class, 'someclass')][" + i + "]"); 

} 

这将通过表你想要的所有比赛,然后保存,以便日后使用

+0

非常感谢! 实际上我不知道的是两个方括号可以在Xpath表达式中像tr [contains(@ class,'foo')] [i]一样走到一起。 这正是我要找的。 再次感谢! – 2010-05-06 00:37:53