我需要找到IReadOnlyCollection <IWebElement>使用WebDriverWait確保元素已經呈現的頁面上。wait.Until(ExpectedConditions.VisibilityOfAllElementsLocatedBy(By.ClassName(類名))不返回任何元素
這是我的代碼
WebDriverWait wait = new WebDriverWait(driver, TimeSpan.FromSeconds(timeout));
return wait.Until(ExpectedConditions.VisibilityOfAllElementsLocatedBy(By.ClassName("TextInput")));
此代碼失敗的超時。 意味着找不到與給定的類名頁面上的任何元素。 我加入這行代碼BEFORE我原來的代碼只是爲了確保該元素存在
var allInputs1 = container.FindElements(By.ClassName("textInput"));
和預期該行返回的元素。
所以我的結論是, wait.Until(ExpectedConditions.VisibilityOfAllElementsLocatedBy(By.ClassName("TextInput")))
不能按預期工作,因爲它無法找到頁面上確實存在的元素。
什麼是使用WebDriverWait查找元素數組的最佳方法?
超時意味着一些匹配類的元素仍然隱藏。嘗試使用更多選擇性選擇器。 –