WebDriverZaczekaj, jak czekać, aż element istnieje lub nie istnieje?
Używam testu przy użyciu Selenium WebDriver i jeśli użytkownik nie ma praw dostępu, div nie istnieje na stronie. Próbuję wykonać oczekiwanie, aby w przypadku wyświetlenia elementu zwracał wartość true, ale jeśli trafi w limit czasu, zwraca wartość false.
public bool SummaryDisplayed()
{
var wait = new WebDriverWait(_driver, TimeSpan.FromSeconds(5));
var myElement = wait.Until(x => x.FindElement(By.Id("summaryPage")));
return myElement.Displayed;
}
Nie chcę korzystać z Thread.Sleep, ponieważ jeśli element jest tam po 2 sekundach, chcę kontynuować. Ale jeśli elementu nie ma po 5 sekundach, powinien zwrócić false. Nie chcę, aby rzucał wyjątek, w niektórych przypadkach testowych oczekuję, że nie będzie istnieć. Czy istnieje sposób, w jaki mogę pominąć wyjątek i zwrócić false po upływie limitu czasu? Dzięki