La manipulation d'Alerte de Windows sur Chrome Pilote (Webdriver)
im avoir de la difficulté à gérer Alerte pop-ups à partir de Chrome, je reçois l'erreur suivante. org.openqa.le sélénium.UnhandledAlertException: inattendu d'alerte ouvert
(Session d'info: chrome=29.0.1547.66)
(Pilote info: chromedriver=2.3,=plate-forme Windows NT 5.1 SP3 x86) .
Voici ce que j'ai essayé jusqu'à présent. Quand j'arrive à la page où l'erreur s'affiche:
driver.switchTo().alert.accept();
Aussi essayé.
Alert alert = driver.switchTo().alert();
alert.accept();
et aussi la même erreur.
Si l'un a un solution pour ce faire, il sera apprécié.
Vous devez vous connecter pour publier un commentaire.
Il peut être votre ChromeDriver version. Je ne recommanderais pas toujours la mise à jour vers des versions plus récentes de quelque chose. Défauts abondent.
Je suis en utilisant ChromeDriver win32_2.0 et il fonctionne très bien. Essayez cette version.
En fait c'(UnhandledAlertException) vient si vous ne le manipulez pas d'alerte correctement Sinon, Si vous effectuez l'opération avec le pilote de l'instance avant la fermeture de l'alerte.
Exemple
Étape 1: Cliquez sur le Bouton //cela va conduire à obtenir une alerte
Étape 2: //Ici, vous devez d'alerte poignée
Dans l'étape 2, au lieu de la manipulation d'alerte si vous n'avez de toute autre opération avec instance de pilote qu'il va jeter UnhandledAlertException exception.
J'ai eu ce problème avec IE. Mais avec deux changements simples, il a commencé à travailler comme sous FF:
1)Comme l'a suggéré https://stackoverflow.com/a/20611297/2872258 j'ai mis une autre option lors de la création IEDriver - unexpectedAlertBehaviour=Ignorer
2)j'avais aussi WebDriverWait d'Alerte, avec la mise en ImplicityWait à "0" au début - d'après ce que @Santoshsarma a dit que c'était un autre problème.
Peut-être une solution pour Chrome.
J'ai essayé d'attraper le stackoverflow erreur et il a travaillé pour moi comme une solution de contournement.