我陷入硒等待的境地。我正在将Selenium Java与黄瓜一起使用。 单击按钮后,将加载新页面,但尚未使内容可单击。页面背面加载时会显示一个灰色屏幕阻止程序,以使其在整个页面加载之前不可编辑。所以我不能使用waitforpageload或等待元素可见,因为当元素在后台可用时它们都返回true。 我尝试使用一种条件来检查元素是否可单击以确保页面完全加载。但这也不起作用。页面加载到后台后,将执行进一步的检查,并且测试最终会出错。
我也尝试过waituntilelement可见:
public static void waitUntilTextIsInvisible(final String text, final int timeoutInSecs)
{
if (StringUtils.isBlank(text))
{
return;
}
try
{
(new WebDriverWait(_webDriver, timeoutInSecs))
.until(new ExpectedCondition<Boolean>()
{
@Override
public Boolean apply(final WebDriver d)
{
return SeleniumUtils.findElementsContainingText(text, d).size() == 0;
}
});
}
catch (TimeoutException e)
{
LOG.error("Exception on page " + _webDriver.getCurrentUrl()
+ " waiting for text " + text + " to be visible");
throw e;
}
}
但这甚至返回了true,然后继续执行下一步。 如何使硒等待灰屏消失,然后在页面上查找内容。
任何答复将不胜感激。
-拉克希米。
答案 0 :(得分:0)
当页面加载并且出现灰色屏幕阻止程序时,您可以暂停浏览器。获取它的xpath并等待它不再存在。让我知道是否有帮助。