Recherche…


Sélénium avec Java

Voici comment gérer une alerte contextuelle en Java avec Selenium:

Il existe 3 types de popups.

  1. Alerte simple : alerte ("Ceci est une alerte simple");
  2. Alerte de confirmation : var popuResult = confirmer ("Confirmer avec les boutons OK et Annuler");
  3. Alerte d'invite : var person = prompt ("Aimez-vous stackoverflow?", "Oui / Non");

Son utilisateur doit savoir quel type de popup doit être manipulé dans son test élémentaire.

Soit vous pouvez

  1. accepter () accepter l'alerte

  2. rejeter () rejeter l'alerte

  3. getText () Pour obtenir le texte de l'alerte

  4. sendKeys () Pour écrire du texte dans l'alerte

Pour une alerte simple:

    Alert simpleAlert = driver.switchTo().alert();
    String alertText = simpleAlert.getText();
    System.out.println("Alert text is " + alertText);
    simpleAlert.accept();

Pour une alerte de confirmation:

    Alert confirmationAlert = driver.switchTo().alert();
    String alertText = confirmationAlert.getText();
    System.out.println("Alert text is " + alertText);
    confirmationAlert.dismiss();

Pour une alerte rapide:

    Alert promptAlert  = driver.switchTo().alert();
    String alertText = promptAlert .getText();
    System.out.println("Alert text is " + alertText);
    //Send some text to the alert
    promptAlert .sendKeys("Accepting the alert");
    Thread.sleep(4000); //This sleep is not necessary, just for demonstration
    promptAlert .accept();

selon vos besoins.

Une autre façon de procéder est d’emballer votre code dans un try-catch:

try{
   // Your logic here.
} catch(UnhandledAlertException e){
  Alert alert = driver.switchTo().alert();
  alert.accept();
}
// Continue.

C #

Voici comment fermer une alerte contextuelle en C # avec Selenium:

IAlert alert = driver.SwitchTo().Alert(); 
// Prints text and closes alert
System.out.println(alert.Text);
alert.Accept();
or
alert.Dismiss();

selon vos besoins.

Une autre façon de procéder est d’emballer votre code dans un try-catch:

try{
   // Your logic here.
} catch(UnhandledAlertException e){
  var alert = driver.SwitchTo().Alert();
  alert.Accept();
}
// Continue.

Python

Il existe plusieurs façons de basculer en alerte pop-up dans Python :

  1. Déconseillé :
alert = driver.switch_to_alert()
  1. En utilisant switch_to :
alert = driver.switch_to.alert
  1. Utiliser ExplicitWait :
 from selenium.webdriver.common.by import By
 from selenium.webdriver.support.ui import WebDriverWait
 from selenium.webdriver.support import expected_conditions as EC

 alert = WebDriverWait(driver, TIMEOUT_IN_SECONDS).until(EC.alert_is_present())
  1. En déclarant l'instance de la classe Alert :
from selenium.webdriver.common.alert import Alert

alert = Alert(driver)

Pour remplir le champ de saisie dans la fenêtre contextuelle déclenchée par l' prompt() JavaScript prompt() :

alert.send_keys('Some text to send')

Pour confirmer la boîte de dialogue contextuelle *:

alert.accept()

De rejeter:

alert.dismiss()

Pour obtenir du texte à partir de la fenêtre contextuelle:

alert.text

* PS alert.dismiss() pourrait être utilisé pour confirmer les pop-ups déclenchés par JavaScript alert() JavaScript alert() ainsi que alert.confirm()



Modified text is an extract of the original Stack Overflow Documentation
Sous licence CC BY-SA 3.0
Non affilié à Stack Overflow