切换至动ID是动态的iframe
上一篇 /
下一篇 2013-07-24 10:56:06
/ 个人分类:selenium
专题三:切换至ID是动态的iframe
场景:iframe无name属性,且id又是动态产生的
思路:切换至iframe的语句,这里我们使用:driver.switchTo().frame(nameOrId);事实上webdriver提供了3种。1.WebDriver frame(int index);2.WebDriver frame(String nameOrId);3.WebDriver frame(WebElement frameElement)。因为遇到的iframe无name属性,且id又是动态产生的。所以先找到此iframe,然后通过getAttribute获取其ID,然后再切换之。
脚本:(JAVA语言实现)
public static Boolean switchToDynamiciframe(WebDriver driver,final WebElement iframe){
return (new WebDriverWait(driver,100)).until(new ExpectedCondition<Boolean>()){
public Boolean apply(WebDriver driver){
String id=iframe.getAttribute("id");
if(id!=null){
driver.switchTo().frame(id);
return true;
}
else{
System.out.println(Not find any id);
return false;
}
}
});
}
收藏
举报
TAG: