Comment attendre jusqu'à ce qu'un élément n'existe plus dans Selenium

Je suis en train de tester une INTERFACE utilisateur dans laquelle l'utilisateur clique sur un bouton de suppression et d'une entrée de la table disparaît. En tant que tel, je veux être en mesure de vérifier que l'entrée de la table n'existe plus.

J'ai essayé d'utiliser ExpectedConditions.not() pour inverser ExpectedConditions.presenceOfElementLocated()en espérant que cela voudrait dire "s'attendre à ce que il n'y a pas une présence de l'élément spécifié". Mon code est comme suit:

browser.navigate().to("http://stackoverflow.com");
new WebDriverWait(browser, 1).until(
        ExpectedConditions.not(
                ExpectedConditions.presenceOfElementLocated(By.id("foo"))));

Cependant, j'ai trouvé que même en faisant ceci, j'obtiens un TimeoutExpcetion causée par un NoSuchElementException dire que l'élément "toto" n'existe pas. Bien sûr, n'ayant pas un tel élément est ce que je veux, mais je ne veux pas la levée d'une exception.

Alors, comment puis-je attendre jusqu'à ce qu'un élément n'existe plus? Je préfère un exemple qui ne dépend pas de l'interception d'une exception, si c'est possible (ce que je comprends, des exceptions doivent être levées exceptionnelles comportement).

source d'informationauteur Thunderforge