IndexOutOfBoundsException:索引:1,大小:1

时间:2018-03-14 06:22:10

标签: java selenium selenium-webdriver indexoutofboundsexception

List<WebElement> filter_icons = (ArrayList<WebElement>) driver.findElements(By.xpath(PropertyFile.read_obj("CONFIGURATION_MAJORMGMT_FILTER_LIST")));
filter_icons.size();
log.info("Data passed in Name Filter");

// filter EmailID
filter_icons.get(0).click();
Common.filter_textbox(driver, Name,By.xpath("//input[@id='filterText']"));
Common.click_filterbutton(driver,By.xpath("//button[text()='Apply Filter']"));

// filter Title
filter_icons.get(1).click();
Common.filter_textbox(driver, Value,By.xpath("//input[@id='filterText']"));
Common.click_filterbutton(driver,By.xpath("//button[text()='Apply Filter']"));

点击第二个过滤器的问题,它给出错误,

java.lang.IndexOutOfBoundsException

相同的代码完全适用于其他方法。

1 个答案:

答案 0 :(得分:1)

错误{{IndexOutOfBoundsException:索引:1,大小:1 清楚地说列表的大小是1(意味着你只在索引0处有项目)并且你试图获取索引1处的项目,这是不存在的。

你可以做到

for (WebElement ele : filter_icons) {
    ele.click();
    Common.filter_textbox(driver, Name,By.xpath("//input[@id='filterText']"));
    Common.click_filterbutton(driver,By.xpath("//button[text()='Apply Filter']"));
}