【问题标题】:How to wait until dynamic content is loaded into paragraph?如何等到动态内容加载到段落中?
【发布时间】:2016-08-22 20:37:53
【问题描述】:

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

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

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

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

【问题讨论】:

  • 能否请您在文本出现前后发布源代码

标签: javascript c# selenium selenium-webdriver


【解决方案1】:

在检查元素之前,您可以执行等待 ajax 调用,如下所示:

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-02-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多