我正在使用两个下拉列表。一个用于选择标准,另一个用于选择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();
}