2016-04-28 94 views
0

此問題與我在C#中使用的selenium webdriver有關。如何等待動態內容加載到段落中?

對於測試用例,我想斷言一個加載在窗體中的文本。這個文本被放入一個div中; wait.Until(ExpectedConditions.ElementExists(By.CssSelector("div.introduction > h2")));

但是,此元素中的內容是動態加載的。由於處理問題JavaScript沒有完成替換此div中的第二個文本 'div.introduction> h2'

因此,當我嘗試在我的表單中斷言我的文本時,出現Assert錯誤。我可以通過解決這個問題。 thread.sleep,但我想要使用它。但我不知道如何解決這個問題?

+0

可以請你之前發佈的源代碼和文本的存在後, –

回答

0

之前檢查的元素,你可以做一個等待換Ajax調用,這東西應該是這樣的:

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