Selenium getText()有时会改变li项的顺序

时间:2014-01-24 23:52:07

标签: java selenium

我有一些列表项的代码。如果我尝试使用selenium webdriver执行getText(),有时li标签的顺序会发生变化。

<div class="alphabets"><h4>Prerequisites:</h4>
<ul>
<li><a name="abc" class="abc">abc</a>,</li>
<li><a name="xyz" class="xyz">xyz</a></li>
</ul>
</div>

driver.findElement(By.className( “字母表”))。gettext的() 给我 先决条件:xyz,abc

我无法弄清楚发生这种情况的原因。任何输入都会有帮助吗?

2 个答案:

答案 0 :(得分:1)

您可以使用findAllElements方法,它将为您提供特定路径的元素。

在您的情况下,您可以这样做:

List<WebElement> listTags = driver.findElements(your-path);

答案 1 :(得分:0)

你可以试试这个。

WebElement list = driver.findElement(By.xpath("//div[@class='alphabets']"));
List<WebElement> alphabets = list.findElements(By.tagName("a"));
for(int i=0;i<alphabets.size();i++)
{
    System.out.println(alphabets.get(i).getText());
}

希望这有帮助。