Le sélénium pilotes Web & Java. L'élément n'est pas cliquable au point (x, y). Autre élément reçoit le clic

J'ai utilisé explicite attend et j'ai l'avertissement:

org.openqa.le sélénium.WebDriverException:
L'élément n'est pas cliquable au point (36, 72). Autre élément recevoir
cliquez sur: ...
Commande de la durée ou de l'expiration: 393 millisecondes

Si j'utilise Thread.sleep(2000) je ne reçois pas tous les avertissements.

@Test(dataProvider = "menuData")
public void Main(String btnMenu, String TitleResultPage, String Text) throws InterruptedException {
    WebDriverWait wait = new WebDriverWait(driver, 10);
    driver.findElement(By.id("navigationPageButton")).click();

    try {
       wait.until(ExpectedConditions.elementToBeClickable(By.cssSelector(btnMenu)));
    } catch (Exception e) {
        System.out.println("Oh");
    }
    driver.findElement(By.cssSelector(btnMenu)).click();
    Assert.assertEquals(driver.findElement(By.cssSelector(TitleResultPage)).getText(), Text);
}
Êtes-vous à l'aide de la version Chrome 61+?
j'utilise Firefox 47.0.1 et seleniumWebDriver 2.51.0
Sur la ligne obtenez-vous l'erreur? Merci
En ligne: pilote.findElement(Par.id("navigationPageButton")).cliquez sur();
Cette erreur signifie que, il y a un autre élément de la superposition de l'élément cible (fixe/absolu placé de superposition) ou le z-index est trop faible. Cela pourrait être causé par des effets de survol à l'aide de transitions (plus lent que le minimum de délai d'attente, dans ce cas 393ms). vous devez attendre pour #navigationPageButton pour devenir visible (ou cliquable à l'aide de elementToBeClickable() pour que l'élément de trop) ou de vérifier si toutes les conditions sont réunies pour que le bouton est cliquable.

OriginalL'auteur Maria | 2017-07-04