Stocker les variables, l'écho, l'alerte, la gestion des fenêtres contextuelles dans Selenium IDE

Table des matières:

Anonim

Dans ce didacticiel, nous allons apprendre les commandes de magasin, les commandes d'écho, les alertes et la gestion des fenêtres contextuelles.

Stockage des variables et de la commande Echo

Magasin

Pour stocker des variables dans Selenium IDE, nous utilisons la commande "store". L'illustration ci-dessous stocke la valeur «tutorial» dans une variable nommée «myVariable».

Pour accéder à la variable, placez-la simplement dans un symbole $ {…}. Par exemple, pour saisir la valeur de "myVariable" dans la zone de texte "userName" de Mercury Tours, saisissez $ {myVariable} dans le champ Value.

StoreElementPresent

Cette commande stocke «vrai» ou «faux» selon la présence de l'élément spécifié. Le script ci-dessous stocke la valeur booléenne «true» dans «var1» et «false» dans «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 la page d'accueil de Mercury Tours.

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 sur 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 IDE a pu enregistrer la chaîne «Sign Up» dans la variable «textVar» en imprimant correctement sa valeur.

Alertes, fenêtres contextuelles et fenêtres multiples

Les alertes sont probablement la forme la plus simple de fenêtres contextuelles. Les commandes Selenium IDE les plus courantes utilisées dans la gestion des alertes sont les suivantes:

assertAlert assertNotAlert récupère le message de l'alerte et l'affirme à une valeur de chaîne que vous avez spécifiée
assertAlertPresent assertAlertNotPresent affirme si une alerte est présente ou non
storeAlert récupère le message d'alerte et le stocke dans une variable que vous spécifierez
storeAlertPresent renvoie TRUE si une alerte est présente; FALSE sinon
verifyAlert 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
verifyAlertPresent verifyAlertNotPresent vérifie si une alerte est présente ou non

N'oubliez pas ces deux choses lorsque vous travaillez avec des alertes:

  • Selenium 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 IDE ne pourra pas gérer les alertes qui se trouvent dans la fonction onload () de la page. Il ne pourra gérer les alertes générées qu'après le chargement complet de la page.

Dans cet exemple, nous utiliserons la commande storeAlert pour montrer que même si Selenium IDE n'a pas montré l'alerte réelle, il était toujours en mesure de récupérer son message.

Étape 1. Dans 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 à voir l'alerte réelle.

Les confirmations

Les confirmations sont des popups qui vous donnent un bouton OK et un bouton 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 utilisées pour gérer les alertes.

  • assertConfirmation / assertNotConfirmation
  • assertConfirmationPresent / assertConfirmationNotPresent
  • storeConfirmation
  • 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 ANNULER.

  • chooseOkOnNextConfirmation / chooseOkOnNextConfirmationAndWait
  • chooseCancelOnNextConfirmation

Vous devez utiliser ces commandes avant une commande qui déclenche la boîte de confirmation afin que Selenium IDE sache à l'avance quelle option choisir. Encore une fois, vous ne pourrez pas voir la boîte de confirmation réelle lors de l'exécution du script.

Testons une page Web qui a un bouton qui a été codé pour montrer si l'utilisateur a appuyé sur le bouton OK ou ANNULER.

Étape 1. Dans Selenium IDE, définissez l'URL de base sur http://jsbin.com et l'URL complète est: http://jsbin.com/enifaf

Étape 2. Créez le script comme indiqué ci-dessous. Cette fois, nous appuierons d'abord sur le bouton OK.

Étape 3. Exécutez le script et notez que vous ne voyez pas la confirmation réelle, mais la page Web a pu indiquer sur quel bouton Selenium IDE avait appuyé.

Étape 4. Remplacez la commande "chooseOkOnNextConfirmation" par "chooseCancelOnNextConfirmation" et exécutez à nouveau le script.

Fenêtres multiples

Si vous cliquez sur un lien qui lance une fenêtre séparée, vous devez d'abord demander à Selenium IDE de sélectionner 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 demanderons à Selenium IDE de faire ce qui suit:

  • Transférer le contrôle de la fenêtre parente 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 en utilisant 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 le chargement de la fenêtre nouvellement lancée avant de pouvoir accéder à son titre.

Étape 3. Exécutez le script. Notez que le scénario de test a réussi, ce qui signifie que nous avons pu basculer entre les fenêtres et vérifier leurs titres avec succès.

Rappelez-vous toujours que définir la cible de selectWindow sur "null" sélectionnera automatiquement la fenêtre parente (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) sont utilisées pour stocker des variables dans Selenium IDE
  • La commande "echo" permet d'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 IDE appuie automatiquement sur le bouton OK lors de la gestion des alertes
  • Lors de la gestion des boîtes de dialogue de confirmation, vous pouvez indiquer à Selenium IDE l'option à utiliser:
    • chooseOkOnNextConfirmation / chooseOkOnNextConfirmationAndWait
    • chooseCancelOnNextConfirmation
  • Les titres de fenêtre sont utilisés comme localisateurs lors du basculement entre les fenêtres du navigateur.
  • Lorsque vous utilisez la commande "selectWindow", définir la cible sur "null" dirigera automatiquement Selenium IDE pour sélectionner la fenêtre parente.