Robot Framework - Travailler avec Dropdown

Dans ce chapitre, nous allons apprendre à travailler avec le menu déroulant à l'aide de la bibliothèque Selenium.

Configuration du projet pour les tests de liste déroulante

Nous allons d'abord créer un projet dans Ride pour travailler avec les navigateurs. Ouvrez ride en utilisant ride.py depuis la ligne de commande -

Cliquez sur Nouveau projet et donnez un nom à votre projet.

Le nom donné est dropdown. Cliquez sur OK pour enregistrer le projet.

Cliquez avec le bouton droit sur le nom du projet créé et cliquez sur Nouveau cas de test -

Donnez un nom au scénario de test et cliquez sur OK pour l'enregistrer.

Nous avons terminé la configuration du projet. Maintenant, nous allons écrire des cas de test pour la liste déroulante. Puisque nous avons besoin de la bibliothèque Selenium, nous devons importer la même chose dans notre projet.

Cliquez sur votre projet sur le côté gauche et utilisez Library from Add Import comme indiqué ci-dessous -

Maintenant, cliquez sur Bibliothèque . Un écran apparaîtra où vous devez entrer le nom de la bibliothèque -

Cliquez sur OK et la bibliothèque s'affichera dans les paramètres.

Le nom donné doit correspondre au nom du dossier installé dans les packages de site.

Dans le cas où le nom ne correspond pas, le nom de la bibliothèque s'affichera en rouge -

L'importation de bibliothèque en rouge est aussi bonne que la bibliothèque n'existe pas à l'intérieur de python.

Cas de test pour Dropdown

Le scénario de test pour la liste déroulante sélectionnera la valeur dans la liste déroulante. Pour travailler avec cela, nous avons besoin du localisateur (identifiant) de cette liste déroulante.

Considérez l'affichage html suivant pour la liste déroulante -

<select name = "carbrand">
   <option value = "">Select car brand..</option>
   <option value = "audi">AUDI</option>
   <option value = "bmw">BMW</option>
   <option value = "chevrolet">CHEVROLET</option>
   <option value = "datsun">DATSUN</option>
</select>

Pour la liste déroulante, le nom est le localisateur . Dans l'exemple ci-dessus, le nom est carbrand . Nous avons également besoin de la valeur pour pouvoir sélectionner la même chose. Les valeurs de l'exemple ci-dessus sont: audi, bmw, chevrolet et datsun .

Maintenant, nous allons créer une page de test avec une liste déroulante, ouvrir la même chose dans le navigateur et sélectionner la valeur dans la liste déroulante.

Les détails du cas de test seront les suivants -

  • Ouvrir l'URL du navigateur - http://localhost/robotframework/dropdown.html en chrome

  • Entrez les détails de la liste déroulante

  • Exécuter le scénario de test

Lors de l'écriture du mot-clé pour les cas de test dans RIDE, appuyez sur Ctrl + Barre d'espace. Cela donne tous les détails de la commande.

Pour le menu déroulant, nous avons trois façons de le faire -

  • Sélectionner dans la liste par index
  • Sélectionner dans la liste par étiquette
  • Sélectionner dans la liste par valeur

Nous travaillerons sur un exemple pour montrer le fonctionnement de tous les cas mentionnés ci-dessus.

Dans notre page de test, nous créerons 3 listes déroulantes et utiliserons les cas de test ci-dessus pour sélectionner la liste déroulante par index, étiquette et valeur.

dropdown.html

<html>
   <head>
      <title>Dropdown</title>
   </head>
   <body>
      <form name="myform" method="POST">
         <div>
            Dropdown By Index:
            <select name = "months">
               <option value = "">Select Months.</option>
               <option value = "Jan">January</option>
               <option value = "Feb">February</option>
               <option value = "Mar">March</option>
               <option value = "Apr">April</option>
               <option value = "May">May</option>
               <option value = "Jun">June</option>
               <option value = "Jul">July</option>
               <option value = "Aug">August</option>
               <option value = "Sept">September</option>
               <option value = "Oct">October</option>
               <option value = "Nov">November</option>
               <option value = "Dec">December</option>
            </select>
         </div>
         <br/>
         <br/>
         <div>
            Dropdown By Label:
            <select name = "days">
               <option value = "">Select Day..</option>
               <option value = "01">01</option>
               <option value = "02">02</option>
               <option value = "03">03</option>
               <option value = "04">04</option>
               <option value = "05">05</option>
               <option value = "06">06</option>
               <option value = "07">07</option>
               <option value = "08">08</option>
               <option value = "09">09</option>
               <option value = "10">10</option>
               <option value = "11">11</option>
               <option value = "12">12</option>
               <option value = "13">13</option>
               <option value = "14">14</option>
               <option value = "15">15</option>
               <option value = "16">16</option>
               <option value = "17">17</option>
               <option value = "18">18</option>
               <option value = "19">19</option>
               <option value = "20">20</option>
               <option value = "21">21</option>
               <option value = "22">22</option>
               <option value = "23">23</option>
               <option value = "24">24</option>
               <option value = "25">25</option>
               <option value = "26">26</option>
               <option value = "27">27</option>
               <option value = "28">28</option>
               <option value = "29">29</option>
               <option value = "30">30</option>
               <option value = "31">31</option>
            </select>
         </div>
         <br/>
         <br/>
         <div>
            Dropdown By Value:
            <select name = "year">
               <option value = "">Select year..</option>
               <option value = "0">2000</option>
               <option value = "1">2001</option>
               <option value = "2">2002</option>
               <option value = "3">2003</option>
               <option value = "4">2004</option>
               <option value = "5">2005</option>
               <option value = "6">2006</option>
               <option value = "7">2007</option>
               <option value = "8">2008</option>
               <option value = "9">2009</option>
               <option value = "10">2010</option>
               <option value = "11">2011</option>
               <option value = "12">2012</option>
               <option value = "13">2013</option>
               <option value = "14">2014</option>
               <option value = "15">2015</option>
               <option value = "16">2016</option>
               <option value = "17">2017</option>
               <option value = "18">2018</option>
            </select>
         </div>
      </form>
   </body>
</html>

Nous ajouterons des cas de test pour les 3 sélections déroulantes dans Ride.

Pour l'index, nous devons passer le localisateur de cette liste déroulante - nom ou id et l'index de l'élément qui doit être sélectionné.

Sélectionnez Liste par index - Exemple

<select name = "months">
   <option value = "">Select Months.</option> // index 0
   <option value = "Jan">January</option> //index 1
   <option value = "Feb">February</option> // index 2
   <option value = "Mar">March</option> // index 3
   <option value = "Apr">April</option> // index 4
   <option value = "May">May</option> // index 5
   <option value = "Jun">June</option> // index 6
   <option value = "Jul">July</option> // index 7
   <option value = "Aug">August</option> // index 8
   <option value = "Sept">September</option> //index 9
   <option value = "Oct">October</option> //index 10
   <option value = "Nov">November</option> //index 11
   <option value = "Dec">December</option> // index 12
</select>

Maintenant, nous voulons sélectionner le mois comme mai afin que l'index à donner dans le cas de test soit 5.

L'étiquette est visible lorsque vous ouvrez la liste déroulante à l'écran.

Si vous souhaitez sélectionner un jour, vous pouvez en choisir un dans la liste déroulante.

Sélectionner dans la liste par valeur

Voici la liste de l'année. La liste a des valeurs de 0 à 18.

<select name = "year">
   <option value = "">Select year..</option>
   <option value = "0">2000</option>
   <option value = "1">2001</option>
   <option value = "2">2002</option>
   <option value = "3">2003</option>
   <option value = "4">2004</option>
   <option value = "5">2005</option>
   <option value = "6">2006</option>
   <option value = "7">2007</option>
   <option value = "8">2008</option>
   <option value = "9">2009</option>
   <option value = "10">2010</option>
   <option value = "11">2011</option>
   <option value = "12">2012</option>
   <option value = "13">2013</option>
   <option value = "14">2014</option>
   <option value = "15">2015</option>
   <option value = "16">2016</option>
   <option value = "17">2017</option>
   <option value = "18">2018</option>
</select>

Si vous souhaitez sélectionner une année, prenez la valeur correspondant à l'année et ajoutez la même chose dans le cas de test. Par exemple, si vous souhaitez sélectionner l'année 2017, la valeur est 17.

Voici la liste finale des cas de test -

Après exécution, voici la sélection effectuée pour les listes déroulantes en fonction du cas de test -

Détails de l'exécution

Détails du rapport

Détails du journal

Détails du cas de test du journal

Conclusion

Nous avons vu comment travailler avec le menu déroulant par valeur, index et étiquette. Nous pouvons nous référer aux journaux et rapports pour obtenir les détails du cas de test exécuté.