Я тестирую пользовательский интерфейс, в котором пользователь нажимает кнопку удаления, и запись в таблице исчезает. Поэтому я хочу проверить, что запись в таблице больше не существует.
Я попытался использовать ExpectedConditions.not()
для инверсии ExpectedConditions.presenceOfElementLocated()
, надеясь, что это будет означать "ожидать, что не существует указанного элемента". Мой код выглядит так:
browser.navigate().to("http://stackoverflow.com");
new WebDriverWait(browser, 1).until(
ExpectedConditions.not(
ExpectedConditions.presenceOfElementLocated(By.id("foo"))));
Тем не менее, я обнаружил, что даже делая это, я получаю TimeoutExpcetion
вызванный TimeoutExpcetion
, в NoSuchElementException
говорится, что элемент "foo" не существует. Конечно, отсутствие такого элемента - это то, что я хочу, но я не хочу, чтобы было исключено исключение.
Итак, как я могу подождать, пока элемент больше не будет существовать? Я бы предпочел пример, который не полагается на вынимание исключения, если это вообще возможно (как я понимаю, исключения должны быть брошены за исключительное поведение).