怎麼說,我得到IndexOutOfBoundsException
同時使用Java增強的for循環?我的代碼看起來像這樣Java增強for循環和IndexOutOfBoundsException?
for (WebElement input : driver.findElements(By.cssSelector("input[type='text']"))) {
if (input.isDisplayed()) {
input.clear();
}
}
它使用硒的webdriver找到所有<input type="text" />
標籤和明確表示,他們的內容是否會顯示(否則它會拋出一個不同的例外)。並在一些測試中,我得到
java.lang.IndexOutOfBoundsException: Index: 1, Size: 0
at java.util.ArrayList.rangeCheck(ArrayList.java:604)
at java.util.ArrayList.get(ArrayList.java:382)
其餘的堆棧跟蹤Pastebin。
編輯
即使我添加了檢查數組空虛
List<WebElement> inputs = driver.findElements(By.cssSelector("input[type='text']"));
if (!inputs.isEmpty()) {
for(WebElement input : inputs) {
}
}
'driver.findElements()'返回的'Iterator'有嚴重錯誤。 – EJP
我有點想通了,但仍然 - 我應該如何妥善處理這種情況? –
你可能運行的是舊版本的Selenium? – Arran