【发布时间】:2012-06-14 01:47:08
【问题描述】:
我正在用 Java 中的 Selenium FirefoxDriver 开发一个测试单元。我需要一些帮助来处理页面加载。我的问题是在等待元素时仍然有超时。我已经尝试应用pageLoadTimeout,implicitlyWait 没有成功,一些方法继续等待整页加载。我的代码预览:
(...)
FirefoxDriver driver= new FirefoxDriver(firefoxProfile);
driver.manage().timeouts().pageLoadTimeout(1, TimeUnit.MILLISECONDS);
driver.manage().timeouts().implicitlyWait(1, TimeUnit.MILLISECONDS);
try {
driver.get("http://mysite");
} catch (org.openqa.selenium.TimeoutException e) {
//after 1 milisecond get method timeouts
}
for (int i = 0; i < 5; i++) {//5 seconds wait
if (driver.findElements(By.id("wait_id")).size() == 0) { //findElements cause java to wait for full load
debug("not found");//never happens because 'if' condition waits for full load
driver.wait(1000);
} else {
debug("found");
break;
}
}
提前致谢。
【问题讨论】:
-
我猜你确实在运行你的 Firefox with unstable loading strategy,对吧?在这种情况下,我猜它不会起作用,因为该功能是测试版,不完整且仅限 Firefoxy。 =/ 但我们会看到,也许有人对此有所了解。
-
不,我没有使用该配置文件首选项...我稍后会尝试并发布结果。
-
但这似乎符合我的目标。发布作为答案,以便我给你信用。
标签: java firefox selenium webdriver