如何解决硒中的staleelement异常

时间:2015-10-07 13:25:58

标签: selenium

我正在使用两个下拉列表。一个用于选择标准,另一个用于选择section。在加载每个下拉列表之前,我设置我的驱动程序等待一段时间。但是,我得到StaleElementException。请告诉我在哪里挣扎?以下是我的代码

    @Test(dataProvider="LinkSubjects")
    {
        public static void LinkSubjects(String standName,String secName,String subName) throws IOException
   {
        WebDriverWait wait = new WebDriverWait(driver,10);
        Select standard = new Select(driver.findElement(By.id(Helper.getElementValue("standardID"))));
        standard.selectByVisibleText(standName);

        wait.until(ExpectedConditions.elementToBeClickable(By.id(Helper.getElementValue("SectionID"))));
        section.selectByVisibleText(secName);

       driver.findElement(By.xpath(Helper.getElementValue("button"))).click();
        }
}

//在这里我正在从excel读取数据并与我的应用程序的表数据匹配

 try {
                for(idx=0;idx<trows.size();idx++){
                    if(idx==0){
                        idz=0;
                    }else{
                        idz = idx * perRowCols.size();
                    }
                for(idy=idz;idy<perRowCols.size()+idz;idy++){

                    Standard_TC_002.colsValue = tcols.get(idy);
                    for(int i=0;i<3;i++){
                        columnValue = String.format(Standard_TC_002.colsValue.toString(), i);
                    }       
                    if(columnValue.equalsIgnoreCase(subName)){

                            toggleArr[idx].click();

                            driver.findElement(By.name("commit")).submit();
                        }
                    }
                }
            }catch(StaleElementReferenceException ex){
                ex.printStackTrace();
            }

0 个答案:

没有答案