WebDriver - Comment vérifier si une alerte est présent?
Dans selenium2 (Webdriver)Comment vérifier si une alerte est présent? et continuer à faire quelque chose si elle n'est pas présente!!!
Je suis en train de faire ceci:
driver.findElement(By.id("btn_may_or_maynot_showalert")).click();
WebDriverWait wait = new WebDriverWait(driver, 2);
try{
wait.until(ExpectedConditions.alertIsPresent());
Alert alert = driver.switchTo().alert();
alert.accept();
}
catch (Exception e){
System.out.println("No alert");
}
driver.findElement(By.id("Cont_doing_something")).click();
Cela fonctionne bien Mais est-il une meilleure façon?
OriginalL'auteur user2048204 | 2013-02-06
Vous devez vous connecter pour publier un commentaire.
Pas, vous êtes en train de faire les choses de la manière la bibliothèque attend que vous. Cependant, l'un des principes de la bibliothèque, c'est que vous savez toujours à quoi s'attendre de votre code d'automation. Cela signifie que vous ne devriez pas courir dans une instance où le bouton "peut ou peut ne pas" provoquer une alerte, vous devez déjà savoir s'appuyant sur le bouton cause d'une alerte ou pas. Si elle n'est autre chose que ce que vous attendez, c'est un état exceptionnel, et une exception doit être levée.
Que faire si vous automatisez vos tests sur un site web, que lorsque des modifications sont apportées sur le site, vous alerte les utilisateurs, l'utilisateur clique sur ok, et la prochaine fois que l'utilisateur se connecte, si rien ne change, ils ne sont pas alertés. Ne voudriez-vous pas un moyen de tester?
Bien sûr, mais puisque vous êtes en train de rédiger le test, vous devez savoir a priori si oui ou non des modifications ont été apportées depuis votre test de l'utilisateur de la dernière connexion, et donc, si oui ou non une alerte est prévu pour être affiché. Si vous n'êtes pas certain de cela, ou si l'exécution de vos tests dans un environnement où il peut y avoir des modifications que le testeur peut pas connaître à l'avance, puis l'ensemble de votre stratégie de test pourrait être suspect.
OriginalL'auteur JimEvans