我不完全理解你的要求,但Webdriver
findElements
方法的順序,他們在返回標記的WebElement
的列表。所以,考慮到你有標記:
<a lang="de" href="//de.wikipedia.org/">Deutsch</a>
<a lang="en" href="//en.wikipedia.org/">English</a>
<a lang="es" href="//es.wikipedia.org/">Español</a>
和您的查詢到List<WebElement>
他們將在順序1.德語2.英語3.西班牙語
例如,嘗試運行這段代碼看看順序:
@Test
public void doSomething(){
WebDriver driver = new FirefoxDriver();
driver.get("http://www.wikipedia.org/");
List<WebElement> elements = driver.findElements(By.xpath("//div[@class=\"langlist langlist-large\"]//a"));
for (WebElement element : elements){
System.out.println(element.getText());
}
}
如果這不適合你,你可以通過使用element.getLocation()
得到元素的位置和比較X和Y座標。類似的東西(假設一般標籤位於信息標籤頂部:
int y1 = informationTab.getLocation().getY();
int y2 = generalTab.getLocation().getY();
assertTrue(y2 < y1);
請添加一些HTML代碼。 – xyz