C#Selenium-明确等待By.CssSelector(...)

时间:2019-01-07 23:07:03

标签: c# selenium selenium-chromedriver

我正在使用30秒的TimeSpan进行显式等待,然后等待。Until(By.CssSelector(“#content .data-grid> .data-row”))。

很明显,这里有一个数据网格。

结果:

  

wait.Until(...)立即返回(它不等待此CssSelector进行评估并获得令人满意的结果)。

预期结果:

  

我希望会等到异步返回数据。

这是明确等待的有效方案吗?

wait.Until(By.CssSelector("#content .data-grid > .data-row"))

1 个答案:

答案 0 :(得分:0)

我认为您缺少ExpectedConditions ...

您声明wait

WebDriverWait wait = new WebDriverWait(driver.driver, TimeSpan.FromSeconds(30));

然后您在此处添加ExpectedConditions,我以ElementIsVisible为例:

wait.Until(ExpectedConditions.ElementIsVisible(By.CssSelector("#content .data-grid > .data-row")));

希望这可以解决问题!