Stocker les variables, l'écho, l'alerte, la gestion des popups dans Selenium IDE
Dans ce didacticiel, nous apprendrons les commandes Store, les commandes Echo, les alertes et la gestion des popups.
Selenium Variables de l'EDI
Store
Pour stocker des variables dans Selenium IDE, nous utilisons la commande « store ». L'illustration ci-dessous stocke la valeur « tutoriel » dans une variable nommée « myVariable ».
Pour accéder à la variable, il suffit de l'entourer d'un symbole ${ … }. Par exemple, pour saisir la valeur de « myVariable » dans la zone de texte « userName » de Mercury Visites guidées, saisissez ${myVariable} dans le champ Valeur.
StoreElementPrésent
Cette commande stocke « vrai » ou « faux » en fonction de la présence de l'élément spécifié. Le script ci-dessous stocke la valeur booléenne « true » sur « var1 » et « false » sur « var2 ». Pour vérifier, nous utiliserons la commande « echo » pour afficher les valeurs de var1 et var2. L'URL de base de l'illustration ci-dessous a été définie sur Mercury Page d'accueil des visites.
StoreText
Cette commande est utilisée pour stocker le texte interne d'un élément sur une variable. L'illustration ci-dessous stocke le texte interne de la balise dans Facebook dans une variable nommée « textVar ».
Puisqu'il s'agit du seul élément de la page, il est prudent d'utiliser 'css=h1' comme cible. L'image ci-dessous montre que Selenium L'IDE a pu enregistrer la chaîne « Sign Up » dans la variable « textVar » en imprimant correctement sa valeur.
Alertes, fenêtres contextuelles et multiples Windows
Les alertes sont probablement la forme la plus simple de fenêtres contextuelles. La plus courante Selenium Les commandes IDE utilisées dans la gestion des alertes sont les suivantes :
Alertes | Utilisations |
---|---|
assertAlert assertNotAlert |
récupère le message de l'alerte et l'affirme à une valeur de chaîne que vous avez spécifiée |
assertAlertPrésent assertAlertNotPresent |
affirme si une alerte est présente ou non |
alerte du magasin | récupère le message d'alerte et le stocke dans une variable que vous préciserez |
storeAlertPrésent | renvoie TRUE si une alerte est présente ; FAUX sinon |
vérifierAlerte verifyNotAlert |
récupère le message de l'alerte et vérifie s'il est égal à la valeur de chaîne que vous avez spécifiée |
verifyAlertePrésent verifyAlertNotPresent |
vérifie si une alerte est présente ou non |
N'oubliez pas ces deux choses lorsque vous travaillez avec des alertes :
- Selenium L'IDE cliquera automatiquement sur le bouton OK de la fenêtre d'alerte et vous ne pourrez donc pas voir l'alerte réelle.
- Selenium L'IDE ne sera pas en mesure de gérer les alertes contenues dans la fonction onload() de la page. Il ne pourra gérer les alertes générées qu’une fois la page complètement chargée.
Dans cet exemple, nous utiliserons la commande storeAlert pour montrer que même si Selenium L'IDE n'a pas affiché l'alerte réelle, il a quand même pu récupérer son message.
Étape 1) In Selenium IDE, définissez l'URL de base sur http://jsbin.com. & l'URL complète est : http://jsbin.com/usidix
Étape 2) Créez le script comme indiqué ci-dessous.
Étape 3) Exécutez le script et ne vous attendez pas à pouvoir voir l'alerte réelle.
Confirmations
Les confirmations sont des fenêtres contextuelles qui vous donnent un bouton OK et ANNULER, par opposition aux alertes qui vous donnent uniquement le bouton OK. Les commandes que vous pouvez utiliser pour gérer les confirmations sont similaires à celles pour gérer les alertes.
- assertConfirmation/assertNotConfirmation
- assertConfirmationPrésent/assertConfirmationNotPresent
- magasinConfirmation
- storeConfirmationPrésent
- verifyConfirmation/verifyNotConfirmation
- verifyConfirmationPresent/verifyConfirmationNotPresent
Cependant, ce sont les commandes supplémentaires que vous devez utiliser pour indiquer Selenium quelle option choisir, que ce soit le bouton OK ou le bouton ANNULER.
- ChooseOkOnNextConfirmation/chooseOkOnNextConfirmationAndWait
- choisirAnnulerOnNextConfirmation
Vous devez utiliser ces commandes avant une commande qui déclenche la boîte de confirmation afin que Selenium L'IDE saura à l'avance quelle option choisir. Là encore, vous ne pourrez pas voir la boîte de confirmation réelle pendant l'exécution du script.
Testons une page Web comportant un bouton codé pour indiquer si l'utilisateur a appuyé sur le bouton OK ou ANNULER.
Étape 1) In Selenium IDE, définissez l'URL de base sur http://jsbin.com
& l'URL complète est : http://jsbin.com/enifaf
Étape 2) Créez le script comme indiqué ci-dessous. Cette fois, nous allons d'abord appuyer sur le bouton OK.
Étape 3) Exécutez le script et remarquez que vous ne voyez pas la confirmation réelle, mais que la page Web a pu indiquer quel bouton Selenium IDE avait insisté.
Étape 4) Remplacez la commande « chooseOkOnNextConfirmation » par « chooseCancelOnNextConfirmation » et exécutez à nouveau le script.
Multiple Windows
Si vous cliquez sur un lien qui ouvre une fenêtre séparée, vous devez d'abord demander Selenium IDE pour sélectionner d'abord cette fenêtre avant de pouvoir accéder aux éléments qu'elle contient. Pour ce faire, vous utiliserez le titre de la fenêtre comme localisateur.
Nous utilisons la commande selectWindow pour basculer entre les fenêtres.
Nous utiliserons un lien http://jsbin.com/ocinaj/1 dont le titre est « Première fenêtre ». Le lien hypertexte « ici » trouvé sur cette page ouvrira Facebook dans une nouvelle fenêtre, après quoi nous donnerons des instructions Selenium IDE pour effectuer les opérations suivantes :
- Transférez le contrôle de la fenêtre parent vers la fenêtre Facebook nouvellement lancée en utilisant la commande « selectWindow » et son titre comme localisateur
- Vérifiez le titre de la nouvelle fenêtre
- Sélectionnez à nouveau la fenêtre d'origine à l'aide de la commande « selectWindow » et « null » comme cible.
- Vérifiez le titre de la fenêtre actuellement sélectionnée
Étape 1) Définissez l'URL de base sur http://jsbin.com.
Étape 2) Créez le script comme indiqué ci-dessous.
Nous avons besoin de la commande « pause » pour attendre que la fenêtre nouvellement lancée se charge avant de pouvoir accéder à son titre.
Étape 3) Exécutez le script. Notez que le Cas de test réussi, ce qui signifie que nous avons pu basculer entre les fenêtres et vérifier leurs titres avec succès.
N'oubliez jamais que définir la cible de selectWindow sur "null" sélectionnera automatiquement la fenêtre parent (dans ce cas, la fenêtre où se trouve l'élément "link=here")
Remarque : Facebook a changé le titre depuis la création des Tutoriels. Veuillez modifier le code en conséquence
Résumé
- La commande « store » (et toutes ses variantes) permet de stocker des variables dans Selenium IDE
- La commande « echo » est utilisée pour imprimer une valeur de chaîne ou une variable
- Les variables sont entourées d'un ${…} lorsqu'elles sont imprimées ou utilisées sur des éléments
- Selenium L'IDE appuie automatiquement sur le bouton OK lors du traitement des alertes
-
Lors de la gestion des boîtes de dialogue de confirmation, vous pouvez demander Selenium IDE quelle option utiliser :
- ChooseOkOnNextConfirmation/chooseOkOnNextConfirmationAndWait
- choisirAnnulerOnNextConfirmation
- Les titres des fenêtres sont utilisés comme localisateurs lors du basculement entre les fenêtres du navigateur.
- Lors de l'utilisation de la commande « selectWindow », définir le Target à « null » dirigera automatiquement Selenium IDE pour sélectionner la fenêtre parent.