我对selenium中的getText()感到困惑。下面给出的是网页摘要。
<input checked name=servClass type=radio
value="Coach">
<font face="Arial, Helvetica, sans-serif">Economy class <br>
<input
name=servClass type=radio value="Business">
Business class <br>
<input
name=servClass type=radio value="First">
First class</font></font></td>
</tr>
我正在尝试使用以下代码段打印单选按钮文本。
List<WebElement> list1 = driver.findElements(By.name("servClass"));
list1.get(1).click();
for (int i=0;i<=2;i++)
{
System.out.println(list1.get(i).getText());
}
此代码不打印文本。有谁能说明这有什么不对吗?
答案 0 :(得分:3)
对于输入或textarea,您需要使用getAttribute("value")
而不是getText()
,用于div,span等。
答案 1 :(得分:2)
getText()
返回元素
<div id='someid'>
someText
</div>
但是input
标记无法容纳任何内容。它不是为此目的而设计的。它被称为void element。
输入不能以这种方式使用getText()
<input id='someid'> text </input>
由于输入包含值属性中的文本,因此您需要使用getAttribute("value")
<input id='someid' value='text'/>