2012-08-30 49 views
-1

这是我的源代码我想验证与硒:硒标签之间getAttribute标签?

<tr class="myclass"> 
    <td class="column" style="width:50%"> Key </td> 
    <td style="width:50%"> Value </td> 
    <td style="width:50%"> &nbsp; </td> 
</tr> 

我想验证他的字“值”包含有。

下面的语句总是返回:而不是“值”

driver.findElement(By.xpath("//tr[td[contains(text(), 'Key')]]/td")).getText(); 

我在做什么错误的“钥匙”?我如何获得我的xpath表达式的文本?

回答

1

这里试试这个

driver.findElement(By.xpath("//tr[@class='myclass']/td[1]")).getText(); 

所有表中的列是兄弟姐妹。如果你在没有数组的情况下调用它们,它将返回第一个值。如果td [1]不起作用,请尝试td [2]。

+0

TD [2]的伎俩! – membersound

0

为什么不只是这个这样,它不会依赖于它在位置它只是存在吗?似乎通过他们全部

//tr[@class='myclass']/td 

,然后循环,确保 '值':

//tr/descendant::td[contains(text(), 'Value')] 

或做一个FindElements。

0

尝试使用CSS选择

driver.findElement(By.cssselector(".myclass > td[style='width:50%']")).getText();