WebDriver.Wait 不等待指定元素
查詢:
查詢:我的程式碼嘗試等待檢索其文字內容之前元素的外觀。單步執行程式碼時,它可以正常運作。然而,當沒有斷點運行時,等待似乎被繞過並引發異常。 為什麼等待被忽略?
WebDriverWait wait = new WebDriverWait(driver, TimeSpan.FromSeconds(30)); IWebElement message = wait.Until(driver => driver.FindElement(By.ClassName("block-ui-message"))); string messageText = message.Text;
程式碼片段:
回覆:string messageText = new WebDriverWait(driver, TimeSpan.FromSeconds(30)).Until(ExpectedConditions.ElementIsVisible(By.ClassName("block-ui-message"))).GetAttribute("innerHTML");
另一個選擇方法是將 WebDriveleVisible方法與修改後的定位器策略結合使用:
將DotNetSeleniumExtras.WaitHelpers 與NuGet 結合使用:string messageText = new WebDriverWait(driver, TimeSpan.FromSeconds(10)).Until(SeleniumExtras.WaitHelpers.ExpectedConditions.ElementIsVisible(By.ClassName("block-ui-message"))).GetAttribute("innerHTML");
以上是為什麼我的 WebDriverWait 在不調試的情況下運行時似乎被忽略了?的詳細內容。更多資訊請關注PHP中文網其他相關文章!