我使用以下代码from here(C#版本):
WebDriverWait wait = new WebDriverWait(driver, TimeSpan.FromSeconds(10));
IWebElement myDynamicElement = wait.Until<IWebElement>((d) =>
{
return d.FindElement(By.Id("someDynamicElement"));
});
该片段下面的文档说:
默认情况下,WebDriverWait每500毫秒调用一次ExpectedCondition,直到它成功返回。
如何修改此处的代码以包含不同的等待时间,例如10毫秒?
答案 0 :(得分:5)
您可以为WebDriverWait的特定实例设置轮询间隔,以下代码将等待20秒以定位元素并每200毫秒轮询一次。
WebDriverWait wait = new WebDriverWait(driver, TimeSpan.FromSeconds(20));
wait.PollingInterval = TimeSpan.FromMilliseconds(200);
IWebElement myDynamicElement = wait.Until<IWebElement>((d) =>
{
return d.FindElement(By.Id("someDynamicElement"));
});
答案 1 :(得分:3)
DefaultWait有轮询间隔。
DefaultWait<IWebDriver> wait = new DefaultWait(driver);
wait.PollingInterval = TimeSpan.FromMilliseconds(10);