如何等到动态内容加载到段落中?

时间:2016-04-28 07:57:09

标签: javascript c# selenium selenium-webdriver

这个问题与我在C#中使用的selenium webdriver有关。

对于测试用例,我想断言在表单中加载的文本。此文本被放入由div选择的div中;  wait.Until(ExpectedConditions.ElementExists(By.CssSelector("div.introduction > h2")));

但是,此元素中的内容是动态加载的。由于处理问题,JavaScript无法替换此div中的第二个文本 ' div.introduction> H2'

当我尝试在表单中断言我的文本时,我得到了Assert错误。我可以通过例如解决此问题thread.sleep,但我想用它。但我不知道如何解决这个调整问题?

1 个答案:

答案 0 :(得分:0)

在检查元素之前,你可以做一个等待ajax调用,看起来像这样:

wait.Until(d => (bool)(d as IJavaScriptExecutor).ExecuteScript("return jQuery.active == 0"));