在浏览器堆栈上运行Selenium Script

时间:2017-07-13 13:03:55

标签: java selenium browserstack

我正在尝试在浏览器堆栈上运行我的selenium脚本,同时在切换到框架时运行脚本面临问题。有时它确实有,但有时没有。 是否有任何永久的解决方案。

driver.switchTo().defaultContent();
List iframeElements = driver.findElements(By.tagName("iframe")); 
System.out.println("The total number of iframes are " + iframeElements.size()); 
WebElement frame = driver.findElement(By.tagName("iframe"));
driver.switchTo().frame(frame); Thread.sleep(5000);
driver.switchTo().defaultContent();

1 个答案:

答案 0 :(得分:0)

您可以等到帧可用,如下所示。它可能对你有帮助。

WebElement frame = driver.findElement(By.tagName("iframe"));
WebDriverWait wait = new WebDriverWait(driver, 90);
wait.until(ExpectedConditions.frameToBeAvailableAndSwitchToIt(frame));