【发布时间】:2014-08-17 07:47:16
【问题描述】:
我正在使用 selenium webdriver / java 进行应用程序测试,我遇到了一个奇怪的问题。
当我得到一个 URL,然后尝试查找或等待一个元素时,执行那将近 6 分钟需要很长时间。
driver.manage().timeouts().pageLoadTimeout(90, TimeUnit.SECONDS);
driver.get(getApplicationURL());
Boolean isPresent = driverUtil.waitAndCheckPresent(20,By.xpath(<my xpath>));
.......................................................
.................................................
public boolean waitAndCheckPresent(int timeout, By by){
try {
WebDriverWait wait = new WebDriverWait(driver, timeout);
WebElement elem = wait.until(ExpectedConditions
.visibilityOfElementLocated(by));
return true;
} catch (Exception e) {
return false;
}
}
详情:- FF 版本:- 17-24 网络驱动程序:- 2.35.0
我不知道为什么它在继续之前挂了这么久,正如我提到的,我只在页面第一次加载时看到这个,[作为登录页面的页面在 10 秒内出现输入字段]
【问题讨论】:
-
调试并检查哪一行花费了这么多时间
-
调试后我发现..只要有一个 driver.find() ,或者控件正在等待某个元素,它就无法找到它...即使该元素存在并且只有当 UI 登录页面出现并且主页页面加载时才会发生这种情况,之后它才能顺利运行....
-
检查服务器(即您启动的 Selenium Server JAR)正在做什么。它会记录它处理的每个请求和响应。看看它卡在哪里。
标签: java firefox selenium automation webdriver