我一直在使用C#selenium來自動化應用程序。我正面臨執行測試時出現間歇性故障的問題。C#硒:測試間歇失敗
有時測試通過&有時會失敗。
失敗說明該元素/框架/窗口不可用。
我一直在使用下面的代碼等待
WebDriverWait wait = new WebDriverWait(Driver.Instance, TimeSpan.FromSeconds(100));
IWebElement elementToWait = wait.Until<IWebElement>((d) =>
{
return Driver.Instance.FindElement(By.Id("Element ID")); ;
});
是這種不一致是由於等待的webdriver使用?爲避免這種情況,最佳做法是什麼?
當調用FindElement()時,使用WebDriverWait將解決不在DOM中的元素的時序問題。但是,聽起來您的情況中還有其他細節(您迄今爲止拒絕提供)。來自例外的確切消息將是一個好的開始。據我所知,.NET綁定中沒有代碼,也沒有任何瀏覽器特定的驅動程序實現會導致發生異常,並顯示消息「元素/框架/窗口不可用」。 – JimEvans