Le sélénium clique sur un élément de "réussir", et pourtant, il n'est pas effectivement cliqué

J'ai une méthode qui clique sur un bouton, toutefois, lorsqu'il est exécuté, le sélénium renvoie le résultat cliqué avec succès, quand, en réalité, le bouton n'est pas cliqué. Si je lance le test plusieurs fois, à l'occasion, il sera cliqué comme prévu. J'ai mon framework de test défini comme un accord implicite d'attendre environ 15 secondes, j'ai mis un explicite attendre pour cet élément, et de toujours voir la même question. Quand je fais <element>.isDisplayed(), l'élément est toujours présent. J'ai placé l' .cliquez dans une boucle while pour cliquer quelques fois qui fonctionne la plupart du temps, cependant, encore parfois, le test échoue. Est-il possible d'avoir une instruction if pour vérifier si un élément est en fait affiché avant de cliquer sur le bouton?

J'ai essayé:

if(!element.isDisplayed){
    element.click
}

Ici, c'est le bouton que je vais avoir des problèmes avec:

<button class="notkoButton listNew">
<div class="l6e iconAdd">New List</div>
</button>

Voici ma méthode:

public marketing_lists_page navigateToNewListPage() throws Throwable {
    try {
        int x = 0;
        while(x < 5) {
            newListBtn.click();
            x++;
        }
       //newListPageHeader.isDisplayed();
    } catch (NoSuchElementException e){
        logs.errorDetails("Could not navigate to New List Page");
        Assert.fail();
    }
    return this;
}
InformationsquelleAutor Saleh Qadan | 2015-11-10